[Kde-imaging] extragear/libs/kipi-plugins/slideshow
Gilles Caulier
caulier.gilles at kdemail.net
Wed Nov 15 07:34:54 CET 2006
On Wednesday 15 November 2006 02:17, Valerio Fuoglio(UNTRUSTED, sender is
<kde-imaging-bounces-+caulier.gilles=kdemail.net at kde.org>) wrote:
> Alle 23:45, martedì 14 novembre 2006, Caulier Gilles(UNTRUSTED, sender
> is <kde-imaging-bounces-+valerio.fuoglio=kdemail.net at kde.org>) ha
>
> scritto:
> > Valerio,
> >
> > Can you fix my plugins (GPSSync, RawConverter, MetadataEdit, etc...).
> > I very busy on Exiv2 project to hack indeep bugs.
>
> In accord to this[1] list, your plugins are:
>
> gpssync : done
> jpeglossless: doesn't use kaboutdata
> metadataedit: done
> rawconverter: done
> sendimages: done
>
> Have I missed something?
>
> Valerio
>
> [1] http://www.kipi-plugins.org/drupal/?q=node/2
Valerio, Angelo,
There is a little memory leak in the way of you use KPAboutData in plugin :
#valgrind --tool=memcheck --leak-check=full --error-limit=no digikam
...
...playing with host and start plugin here...
...close host...
...
==2901== 6065 (56 direct, 6009 indirect) bytes in 1 blocks are definitely lost
in loss record 321 of 337
==2901== at 0x1B8FFC32: operator new(unsigned) (vg_replace_malloc.c:164)
==2901== by 0x1F6A301D:
KIPIMetadataEditPlugin::EXIFEditDialog::EXIFEditDialog(QWidget*, KURL::List)
(exifeditdialog.cpp:149)
==2901== by 0x1F69D17A: Plugin_MetadataEdit::slotEditExif()
(plugin_metadataedit.cpp:140)
==2901== by 0x1F69F719: Plugin_MetadataEdit::qt_invoke(int, QUObject*)
(plugin_metadataedit.moc:92)
==2901== by 0x1CBED25C: QObject::activate_signal(QConnectionList*,
QUObject*) (in /usr/lib/qt3/lib/libqt-mt.so.3.3.4)
==2901== by 0x0: ???
==2901==
==2901== LEAK SUMMARY:
==2901== definitely lost: 972 bytes in 9 blocks.
==2901== indirectly lost: 20956 bytes in 157 blocks.
==2901== possibly lost: 936 bytes in 22 blocks.
==2901== still reachable: 607334 bytes in 8603 blocks.
==2901== suppressed: 0 bytes in 0 blocks.
==2901== Reachable blocks (those to which a pointer was found) are not shown.
==2901== To see them, rerun with: --show-reachable=yes
This is duing about to allocate KPAboutData on the heap like this :
KIPIPlugins::KPAboutData * about = new KIPIPlugins::KPAboutData(...);
... and pass it to KHelpMenu as well. I have seen the same problem into
DigikamImagePlugins. The solution is simple : just delete KPAboutData
instance container when dialog is destructed.
I suspect a bug in KHelpMenu API witch unallocate properlly the about data
container.
Attached a patch for MetadataEdit::ExifDialog (:=)))...
Note : testing an implementation with valgrind is always a big help from
developpers...
I'm back to work on Exiv2 project now...
Gilles
-------------- next part --------------
A non-text attachment was scrubbed...
Name: exifdialog.patch
Type: text/x-diff
Size: 3170 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/kde-imaging/attachments/20061115/dc09cf9c/attachment.bin
More information about the Kde-imaging
mailing list