|
Hi,
once the beta is out we will get numerous crash reports from the kipi plugin loader. The problem is that loading a kipi plugin compiled with old libkipi crashes, the plugin is interpreted as XMLGuiClient which it is not. Now, I got the crash and thought "we need to add some safety checks, dynamic_cast, check ABI version of the plugin". I had a look and the code, and Victor has done all that already. It seems the kipi2-constructor is called from the kipi1 code, why not, the symbol has the same name. Anyway, I dont have a good idea how to fix that. If there is no way, we shall know to tell everyone first to remove old kipi plugins. Marcel _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Yes, Marcel, I also seen this problem on my computer, and i don't find
a way yet to solve this issue. Victor ? Gilles 2012/9/13 Marcel Wiesweg <[hidden email]>: > Hi, > > once the beta is out we will get numerous crash reports from the kipi plugin > loader. The problem is that loading a kipi plugin compiled with old libkipi > crashes, the plugin is interpreted as XMLGuiClient which it is not. > Now, I got the crash and thought "we need to add some safety checks, > dynamic_cast, check ABI version of the plugin". I had a look and the code, and > Victor has done all that already. It seems the kipi2-constructor is called > from the kipi1 code, why not, the symbol has the same name. > Anyway, I dont have a good idea how to fix that. If there is no way, we shall > know to tell everyone first to remove old kipi plugins. > > Marcel > _______________________________________________ > Digikam-devel mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-devel Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Marcel,
If the run-time check in libkipi do not fix the problem, we can try another solution. Why not to patch all plugin desktop file to include kipi-plugins version ID. Like this before to load shared object through plugin loader, we can check if version is right to be loaded without crash. As with kipi-plugins < 3.0.0 this information do not exist, we can prevent crash relevant of older plugins. Note : i already patch common kipiplugins.desktop from libkipiplugins with version ID : https://projects.kde.org/projects/extragear/graphics/kipi-plugins/repository/revisions/master/entry/common/libkipiplugins/kipiplugins.desktop.cmake#L96 It's easy to patch all plugins desktop files like this... Gilles Caulier 2012/9/13 Gilles Caulier <[hidden email]>: > Yes, Marcel, I also seen this problem on my computer, and i don't find > a way yet to solve this issue. > > Victor ? > > Gilles > > 2012/9/13 Marcel Wiesweg <[hidden email]>: >> Hi, >> >> once the beta is out we will get numerous crash reports from the kipi plugin >> loader. The problem is that loading a kipi plugin compiled with old libkipi >> crashes, the plugin is interpreted as XMLGuiClient which it is not. >> Now, I got the crash and thought "we need to add some safety checks, >> dynamic_cast, check ABI version of the plugin". I had a look and the code, and >> Victor has done all that already. It seems the kipi2-constructor is called >> from the kipi1 code, why not, the symbol has the same name. >> Anyway, I dont have a good idea how to fix that. If there is no way, we shall >> know to tell everyone first to remove old kipi plugins. >> >> Marcel >> _______________________________________________ >> Digikam-devel mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-devel Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Marcel, Victor,
I tried to hack this problem on my computer where i installed and old and experimental Youtube export plugin compiled with libkipi 1.x I placed some debug trace in libkipi and digiKam plugins loader to show which binray version name is reported : digikam(29555)/KIPI (loading) KIPI::PluginLoader::init: Plugin "JPEGLossless" is in the ignore list from host application digikam(29555)/KIPI (loading) KIPI::PluginLoader::init: Plugin "HelloWorld" is in the ignore list from host application digikam(29555)/KIPI (loading) KIPI::PluginLoader::init: Plugin "KXMLHelloWorld" is in the ignore list from host application digikam(29555)/KIPI (loading) KIPIIpodExportPlugin::Plugin_iPodExport::Plugin_iPodExport: Plugin_iPodExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "iPodExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "iPodExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPanoramaPlugin::Plugin_Panorama::Plugin_Panorama: Plugin_Panorama plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Panorama" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Panorama" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIRajceExportPlugin::Plugin_RajceExport::Plugin_RajceExport: Plugin_RajceExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "RajceExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "RajceExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIAdvancedSlideshowPlugin::Plugin_AdvancedSlideshow::Plugin_AdvancedSlideshow: Plugin_AdvancedSlideshow plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "AdvancedSlideshow" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "AdvancedSlideshow" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIRemoveRedEyesPlugin::Plugin_RemoveRedEyes::Plugin_RemoveRedEyes: Plugin_RemoveRedEyes plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "RemoveRedEyes" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "RemoveRedEyes" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIExpoBlendingPlugin::Plugin_ExpoBlending::Plugin_ExpoBlending: Plugin_ExpoBlending plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "ExpoBlending" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "ExpoBlending" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPrintImagesPlugin::Plugin_PrintImages::Plugin_PrintImages: Plugin_PrintImages plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "PrintImages" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "PrintImages" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIFlickrExportPlugin::Plugin_FlickrExport::Plugin_FlickrExport: Plugin_FlickrExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "FlickrExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "FlickrExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPICalendarPlugin::Plugin_Calendar::Plugin_Calendar: Plugin_Calendar plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Calendar" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Calendar" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPiwigoExportPlugin::Plugin_PiwigoExport::Plugin_PiwigoExport: Plugin_PiwigoExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "PiwigoExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "PiwigoExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPISmugPlugin::Plugin_Smug::Plugin_Smug: Plugin_Smug plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Smug" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Smug" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIWikiMediaPlugin::Plugin_WikiMedia::Plugin_WikiMedia: Plugin_MediaWiki plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "MediaWiki export" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "MediaWiki export" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Youtube" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Youtube" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIKioExportPlugin::Plugin_KioExportImport::Plugin_KioExportImport: Plugin_KioExportImport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "KioExportImport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "KioExportImport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIViewerPlugin::Plugin_viewer::Plugin_viewer: OpenGL viewer plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "kipiplugin_imageviewer" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "kipiplugin_imageviewer" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPhotivoIntegrationPlugin::Plugin_PhotivoIntegration::Plugin_PhotivoIntegration: Plugin_PhotivoIntegration plugin loaded digikam(29555)/KIPI (loading) KIPIPhotivoIntegrationPlugin::Plugin_PhotivoIntegration::Plugin_PhotivoIntegration: () digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "PhotivoIntegration" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "PhotivoIntegration" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIShwupPlugin::Plugin_Shwup::Plugin_Shwup: Plugin_Shwup plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Shwup Export" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Shwup Export" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIFlashExportPlugin::Plugin_FlashExport::Plugin_FlashExport: Plugin_Flashexport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "FlashExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "FlashExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIVkontaktePlugin::Plugin_Vkontakte::Plugin_Vkontakte: Plugin_Vkontakte plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "VKontakte" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "VKontakte" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIAcquireImagesPlugin::Plugin_AcquireImages::Plugin_AcquireImages: Plugin_AcquireImages plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "AcquireImages" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "AcquireImages" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIDebianScreenshotsPlugin::Plugin_DebianScreenshots::Plugin_DebianScreenshots: Plugin_DebianScreenshots plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Debian Screenshots Export" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Debian Screenshots Export" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPISendimagesPlugin::Plugin_SendImages::Plugin_SendImages: Plugin_SendImages plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "SendImages" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "SendImages" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIBatchProcessImagesPlugin::Plugin_BatchProcessImages::Plugin_BatchProcessImages: Plugin_BatchProcessImages plugin loaded digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "batch_border_images" ' is disabled. digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "batch_color_images" ' is disabled. digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "batch_convert_images" ' is disabled. digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "batch_filter_images" ' is disabled. digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "batch_rename_images" ' is disabled. digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "BatchProcessImages" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "BatchProcessImages" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIImgurExportPlugin::Plugin_ImgurExport::Plugin_ImgurExport: ImgurExport plugin loaded digikam(29555)/KIPI (loading) KIPIImgurExportPlugin::Plugin_ImgurExport::Plugin_ImgurExport: () digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "ImgurExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "ImgurExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIGPSSyncPlugin::Plugin_GPSSync::Plugin_GPSSync: Plugin_GPSSync plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "GPSSync" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "GPSSync" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPicasawebExportPlugin::Plugin_PicasawebExport::Plugin_PicasawebExport: Plugin_PicasawebExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "PicasawebExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "PicasawebExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIVideoSlideShowPlugin::Plugin_VideoSlideShow::Plugin_VideoSlideShow: Plugin_VideoSlideShow plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "VideoSlideShow" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "VideoSlideShow" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPITimeAdjustPlugin::Plugin_TimeAdjust::Plugin_TimeAdjust: Plugin_TimeAdjust plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "TimeAdjust" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "TimeAdjust" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIYandexFotkiPlugin::Plugin_YandexFotki::Plugin_YandexFotki: Plugin_YandexFotki plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "YandexFotki" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "YandexFotki" :: Binary version = 10 digikam(29555)/KIPI (general) KIPIImageshackExportPlugin::Plugin_ImageshackExport::Plugin_ImageshackExport: Plugin_ImageshackExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "ImageshackExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "ImageshackExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIPlugins::KPAboutData::KPAboutData: 0xa043ba2 digikam(29555)/KIPI (general) KIPIPhotoLayoutsEditor::Plugin_PhotoLayoutsEditor::Plugin_PhotoLayoutsEditor: Plugin_PhotoLayoutsEditor plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "photolayoutseditor" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "photolayoutseditor" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIHTMLExport::Plugin_HTMLExport::Plugin_HTMLExport: Plugin_HTMLExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "HTMLExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "HTMLExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIKMLExportPlugin::Plugin_KMLExport::Plugin_KMLExport: Plugin_KMLExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "KMLExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "KMLExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIDLNAExportPlugin::Plugin_DLNAExport::Plugin_DLNAExport: Plugin_DLNAExport plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "DLNAExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "DLNAExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIMetadataEditPlugin::Plugin_MetadataEdit::Plugin_MetadataEdit: Plugin_MetadataEdit plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "MetadataEdit" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "MetadataEdit" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIDNGConverterPlugin::Plugin_DNGConverter::Plugin_DNGConverter: Plugin_DNGConverter plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "DNGConverter" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "DNGConverter" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIGalleryExportPlugin::Plugin_GalleryExport::Plugin_GalleryExport: Plugin_GalleryExport plugin loaded digikam(29555)/KIPI (general) KIPIGalleryExportPlugin::Gallery::load: Reading data from kipirc file.. digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "GalleryExport" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "GalleryExport" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIFacebookPlugin::Plugin_Facebook::Plugin_Facebook: Plugin_Facebook plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Facebook Import/Export" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Facebook Import/Export" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIRawConverterPlugin::Plugin_RawConverter::Plugin_RawConverter: Plugin_RawConverter plugin loaded digikam(29555)/KIPI (general) KIPI::Plugin::Private::XMLParser::removeDisabledActions: Plugin action ' "raw_converter_single" ' is disabled. digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "RawConverter" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "RawConverter" :: Binary version = 10 digikam(29555)/KIPI (loading) KIPIKopetePlugin::Plugin_Kopete::Plugin_Kopete: Plugin_Kopete plugin loaded digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Loaded plugin "Kopete Export" digikam(29555)/KIPI (loading) KIPI::PluginLoader::Info::plugin: Plugin "Kopete Export" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "iPodExport" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "Panorama" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "RajceExport" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "AdvancedSlideshow" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "RemoveRedEyes" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "ExpoBlending" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "PrintImages" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "FlickrExport" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "Calendar" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "PiwigoExport" :: Binary version = 10 digikam(29555)/KIPI (general) KIPIPiwigoExportPlugin::Piwigo::load: Reading data from kipirc file.. digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "Smug" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "MediaWiki export" :: Binary version = 10 digikam(29555)/digikam (core) Digikam::KipiPluginLoader::slotKipiPluginPlug: Plugin "Youtube" :: Binary version = 10 KCrash: Application 'digikam' crashing... KCrash: Attempting to start /usr/lib/kde4/libexec/drkonqi from kdeinit sock_file=/home/gilles/.kde4/socket-localhost.localdomain/kdeinit4__0 [1]+ Stoppé digikam [gilles@localhost build]$ Look like all plugins, including YouTube report SO name = 10 ! This want mean that to set setProperty("KipiBinaryVersion", kipi_binary_version); in KIPI::Plugin constructor doesn't work and is not suitable to check SO version of plugin. Definitively, I think that my idea to patch all plugin desktop files to host SO version is the good way... Gilles _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
> This want mean that to set > > setProperty("KipiBinaryVersion", kipi_binary_version); > > in KIPI::Plugin constructor doesn't work and is not suitable to check > SO version of plugin. > > Definitively, I think that my idea to patch all plugin desktop files > to host SO version is the good way... I agree with your proposal. I suspect that the old kipi plugins are resolved with the symbols from the already loaded new library, meaning from the old kipi plugins constructor the new library's constructor of KIPI::Plugin is called, and all that is done there does not tell us anything. _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Ok, i will patch it tomorrow. All will be packaged by Nicolas sunday.
I just time to do it... Nicolas, i CC just for info. Gilles 2012/9/14 Marcel Wiesweg <[hidden email]>: > >> This want mean that to set >> >> setProperty("KipiBinaryVersion", kipi_binary_version); >> >> in KIPI::Plugin constructor doesn't work and is not suitable to check >> SO version of plugin. >> >> Definitively, I think that my idea to patch all plugin desktop files >> to host SO version is the good way... > > I agree with your proposal. > I suspect that the old kipi plugins are resolved with the symbols from the > already loaded new library, meaning from the old kipi plugins constructor the > new library's constructor of KIPI::Plugin is called, and all that is done > there does not tell us anything. > _______________________________________________ > Digikam-devel mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-devel Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Victor,
I patched FindKipi cmake script for digiKam SC : http://commits.kde.org/scratch/mwiesweg/digikam-sc/67dc8aa4e0129e5cd295d68f0767819c18f1b93e It able to extract now the kipi_binary_version value from libkipi/version.h file. I will patch all kipi plugins .desktop files with it and check in libkipi if plugins to load are compatible. I checked also the FindKIPI cmake script from kdelibs which is really outdated. It must be updated as well with digiKam SC version urgently, else libkipi will not be usable with kipi-plugins independently... For right reasons, i cannot commit to KDElibs (I have been able to do it few month ago): [gilles@localhost modules]$ git ci [master caf3040] update find libkipi script accordingly with GoSC2012 done by Victor Dodon 1 file changed, 118 insertions(+), 116 deletions(-) rewrite cmake/modules/FindKipi.cmake (90%) [gilles@localhost modules]$ git push X11 forwarding request failed on channel 0 Counting objects: 9, done. Delta compression using up to 4 threads. Compressing objects: 100% (5/5), done. Writing objects: 100% (5/5), 1.72 KiB, done. Total 5 (delta 3), reused 0 (delta 0) remote: W refs/heads/master cgilles DENIED by refs/heads/master remote: error: hook declined to update refs/heads/master To [hidden email]:kdelibs ! [remote rejected] master -> master (hook declined) error: failed to push some refs to '[hidden email]:kdelibs' Marcel, do you have right to do it ? Gilles _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Marcel,
Just for info, i investigated yesterday evening why KipiBinaryVersion property in KIPI::Plugin doesn't work. In fact set this property directly in libkipi as well is definitively wrong, because this init this value always in plugin instance when constructor is called. It must be do in plugin constructor as well. In this case it work fine. This require to patch all plugin of course. But, other problem appears with older plugins version, especially the destructor, which is only QObject based class instead QObject+KXMLGUIClient. I able to disable to load plugin is KipiBinaryVersion is not fine, but later plugin instance is deleted. destructor is called, and... KXMLGUIClient is called in which crash KDELibs, because plugin is not linked with this class... Commenting plugin delete code in plugin loader is not a solution : we don't have a memory leak, and digiKam start properly, but at end, because Qt will try to delete plugin object from memory, it will crash digiKam... So, definitively, .desktop file way must be used here... Gilles _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
libkipi is now patched with desktop file solution. It work :
http://commits.kde.org/libkipi/ef8501cfa0b2f88fed4b8d081434c186df794fb0 I started to patch some plugins : http://commits.kde.org/kipi-plugins/934c64e7e6fc55bd2a9fb2dd98cd41017ae19687 I will complete all others plugins before tomorrow evening. Nicolas, please take a care to not release 3.0.0-beta1 before that i completed this patch. In all case i will mail you when all is ready... Gilles 2012/9/15 Gilles Caulier <[hidden email]>: > Marcel, > > Just for info, i investigated yesterday evening why KipiBinaryVersion > property in KIPI::Plugin doesn't work. > > In fact set this property directly in libkipi as well is definitively > wrong, because this init this value always in plugin instance when > constructor is called. It must be do in plugin constructor as well. In > this case it work fine. This require to patch all plugin of course. > > But, other problem appears with older plugins version, especially the > destructor, which is only QObject based class instead > QObject+KXMLGUIClient. I able to disable to load plugin is > KipiBinaryVersion is not fine, but later plugin instance is deleted. > destructor is called, and... KXMLGUIClient is called in which crash > KDELibs, because plugin is not linked with this class... > > Commenting plugin delete code in plugin loader is not a solution : we > don't have a memory leak, and digiKam start properly, but at end, > because Qt will try to delete plugin object from memory, it will crash > digiKam... > > So, definitively, .desktop file way must be used here... > > Gilles Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Nicolas,
I complete to patch libkipi and all kipi plugins to prevent crash if older plugins are installed on computer at the same time than new one. You can create 3.0.0-beta1 tarball when you want... Gilles Caulier 2012/9/15 Gilles Caulier <[hidden email]>: > libkipi is now patched with desktop file solution. It work : > > http://commits.kde.org/libkipi/ef8501cfa0b2f88fed4b8d081434c186df794fb0 > > I started to patch some plugins : > > http://commits.kde.org/kipi-plugins/934c64e7e6fc55bd2a9fb2dd98cd41017ae19687 > > I will complete all others plugins before tomorrow evening. > > Nicolas, please take a care to not release 3.0.0-beta1 before that i > completed this patch. > In all case i will mail you when all is ready... > > Gilles > > 2012/9/15 Gilles Caulier <[hidden email]>: >> Marcel, >> >> Just for info, i investigated yesterday evening why KipiBinaryVersion >> property in KIPI::Plugin doesn't work. >> >> In fact set this property directly in libkipi as well is definitively >> wrong, because this init this value always in plugin instance when >> constructor is called. It must be do in plugin constructor as well. In >> this case it work fine. This require to patch all plugin of course. >> >> But, other problem appears with older plugins version, especially the >> destructor, which is only QObject based class instead >> QObject+KXMLGUIClient. I able to disable to load plugin is >> KipiBinaryVersion is not fine, but later plugin instance is deleted. >> destructor is called, and... KXMLGUIClient is called in which crash >> KDELibs, because plugin is not linked with this class... >> >> Commenting plugin delete code in plugin loader is not a solution : we >> don't have a memory leak, and digiKam start properly, but at end, >> because Qt will try to delete plugin object from memory, it will crash >> digiKam... >> >> So, definitively, .desktop file way must be used here... >> >> Gilles Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Le dimanche 16 septembre 2012 10:49:07 Gilles Caulier a écrit :
> Nicolas, > > I complete to patch libkipi and all kipi plugins to prevent crash if > older plugins are installed on computer at the same time than new one. > > You can create 3.0.0-beta1 tarball when you want... > > Gilles Caulier hi, awesome, i will do it "in not that long" thanks _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Nicolas,
There is a problem with some kipi-plugins. For obscurs reason, as usual with git, something is missing in your tarball. In fact checking from another computer in my office after a fresh checkout, i see a lots of my commits done sunday not integrated in master. This include CMakeLists.txt from few plugins to configure desktop files. Do not ask me why this commit are not in git/master. I see atomic commits appears in my mail, step by step. Two ways : 1/ git is buggous, 2/ i'm stupid. I agree with 2/ if you want, because i work too much, and it's time for me to stop all developments in OpenSource (:=)))... ... but in all cases tarball can not be installed (it compile fine anyway) and must be updated. I prepare commit ASAP to fix git/master... Gilles 2012/9/16 Nicolas Lécureuil <[hidden email]>: > Le dimanche 16 septembre 2012 10:49:07 Gilles Caulier a écrit : >> Nicolas, >> >> I complete to patch libkipi and all kipi plugins to prevent crash if >> older plugins are installed on computer at the same time than new one. >> >> You can create 3.0.0-beta1 tarball when you want... >> >> Gilles Caulier > hi, > > awesome, i will do it "in not that long" > > thanks Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Fixed in git/master :
http://commits.kde.org/kipi-plugins/b9700e7f6cdf5d95209df7bf96957c8539d221d6 Gilles Caulier 2012/9/17 Gilles Caulier <[hidden email]>: > Nicolas, > > There is a problem with some kipi-plugins. For obscurs reason, as > usual with git, something is missing in your tarball. In fact checking > from another computer in my office after a fresh checkout, i see a > lots of my commits done sunday not integrated in master. This include > CMakeLists.txt from few plugins to configure desktop files. > > Do not ask me why this commit are not in git/master. I see atomic > commits appears in my mail, step by step. Two ways : 1/ git is > buggous, 2/ i'm stupid. > > I agree with 2/ if you want, because i work too much, and it's time > for me to stop all developments in OpenSource (:=)))... > > ... but in all cases tarball can not be installed (it compile fine > anyway) and must be updated. > > I prepare commit ASAP to fix git/master... > > Gilles > > 2012/9/16 Nicolas Lécureuil <[hidden email]>: >> Le dimanche 16 septembre 2012 10:49:07 Gilles Caulier a écrit : >>> Nicolas, >>> >>> I complete to patch libkipi and all kipi plugins to prevent crash if >>> older plugins are installed on computer at the same time than new one. >>> >>> You can create 3.0.0-beta1 tarball when you want... >>> >>> Gilles Caulier >> hi, >> >> awesome, i will do it "in not that long" >> >> thanks Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
Hi Gilles
can I push to git/master now? for that typo bug? On Mon, Sep 17, 2012 at 4:23 PM, Gilles Caulier <[hidden email]> wrote: > Fixed in git/master : > > http://commits.kde.org/kipi-plugins/b9700e7f6cdf5d95209df7bf96957c8539d221d6 > > Gilles Caulier > > 2012/9/17 Gilles Caulier <[hidden email]>: >> Nicolas, >> >> There is a problem with some kipi-plugins. For obscurs reason, as >> usual with git, something is missing in your tarball. In fact checking >> from another computer in my office after a fresh checkout, i see a >> lots of my commits done sunday not integrated in master. This include >> CMakeLists.txt from few plugins to configure desktop files. >> >> Do not ask me why this commit are not in git/master. I see atomic >> commits appears in my mail, step by step. Two ways : 1/ git is >> buggous, 2/ i'm stupid. >> >> I agree with 2/ if you want, because i work too much, and it's time >> for me to stop all developments in OpenSource (:=)))... >> >> ... but in all cases tarball can not be installed (it compile fine >> anyway) and must be updated. >> >> I prepare commit ASAP to fix git/master... >> >> Gilles >> >> 2012/9/16 Nicolas Lécureuil <[hidden email]>: >>> Le dimanche 16 septembre 2012 10:49:07 Gilles Caulier a écrit : >>>> Nicolas, >>>> >>>> I complete to patch libkipi and all kipi plugins to prevent crash if >>>> older plugins are installed on computer at the same time than new one. >>>> >>>> You can create 3.0.0-beta1 tarball when you want... >>>> >>>> Gilles Caulier >>> hi, >>> >>> awesome, i will do it "in not that long" >>> >>> thanks > _______________________________________________ > Digikam-devel mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-devel -- Smit Mehta Junior year, B.Tech Computer Science and Engineering IIT Madras +91-9884996531 _______________________________________________ Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
|
yes you can. Nicolas will patch tarball as well...
Gilles 2012/9/17 smit <[hidden email]>: > Hi Gilles > > can I push to git/master now? for that typo bug? > > On Mon, Sep 17, 2012 at 4:23 PM, Gilles Caulier > <[hidden email]> wrote: >> Fixed in git/master : >> >> http://commits.kde.org/kipi-plugins/b9700e7f6cdf5d95209df7bf96957c8539d221d6 >> >> Gilles Caulier >> >> 2012/9/17 Gilles Caulier <[hidden email]>: >>> Nicolas, >>> >>> There is a problem with some kipi-plugins. For obscurs reason, as >>> usual with git, something is missing in your tarball. In fact checking >>> from another computer in my office after a fresh checkout, i see a >>> lots of my commits done sunday not integrated in master. This include >>> CMakeLists.txt from few plugins to configure desktop files. >>> >>> Do not ask me why this commit are not in git/master. I see atomic >>> commits appears in my mail, step by step. Two ways : 1/ git is >>> buggous, 2/ i'm stupid. >>> >>> I agree with 2/ if you want, because i work too much, and it's time >>> for me to stop all developments in OpenSource (:=)))... >>> >>> ... but in all cases tarball can not be installed (it compile fine >>> anyway) and must be updated. >>> >>> I prepare commit ASAP to fix git/master... >>> >>> Gilles >>> >>> 2012/9/16 Nicolas Lécureuil <[hidden email]>: >>>> Le dimanche 16 septembre 2012 10:49:07 Gilles Caulier a écrit : >>>>> Nicolas, >>>>> >>>>> I complete to patch libkipi and all kipi plugins to prevent crash if >>>>> older plugins are installed on computer at the same time than new one. >>>>> >>>>> You can create 3.0.0-beta1 tarball when you want... >>>>> >>>>> Gilles Caulier >>>> hi, >>>> >>>> awesome, i will do it "in not that long" >>>> >>>> thanks >> _______________________________________________ >> Digikam-devel mailing list >> [hidden email] >> https://mail.kde.org/mailman/listinfo/digikam-devel > > > > -- > Smit Mehta > Junior year, B.Tech > Computer Science and Engineering > IIT Madras > +91-9884996531 > _______________________________________________ > Digikam-devel mailing list > [hidden email] > https://mail.kde.org/mailman/listinfo/digikam-devel Digikam-devel mailing list [hidden email] https://mail.kde.org/mailman/listinfo/digikam-devel |
| Free forum by Nabble | Edit this page |
