Hello, I experience problem,:
When I create project from Kdevelop template(for example KDE "Hello world") and run untouched program with valgrind I get leaks!

I use Kdevlop 3.5.0.1 (2007-October-24 - Third binary snapshot of the stable KDevelop 3.5.x release series) on Kubuntu 7.10


code is untouched after generated with new project template

main.cpp
Qt Code:
  1. #include "kdesimpleapp.h"
  2. #include <kapplication.h>
  3. #include <kaboutdata.h>
  4. #include <kcmdlineargs.h>
  5. #include <klocale.h>
  6.  
  7. static const char description[] =
  8. I18N_NOOP("A KDE KPart Application");
  9.  
  10. static const char version[] = "0.1";
  11.  
  12. static KCmdLineOptions options[] =
  13. {
  14. // { "+[URL]", I18N_NOOP( "Document to open" ), 0 },
  15. KCmdLineLastOption
  16. };
  17.  
  18. int main(int argc, char **argv)
  19. {
  20. KAboutData about("kdesimpleapp", I18N_NOOP("KDEsimpleapp"), version, description,
  21. KAboutData::License_GPL, "(C) 2007 unknown,,,", 0, 0, "unknown@unknown");
  22. about.addAuthor( "unknown,,,", 0, "unknown@unknown" );
  23. KCmdLineArgs::init(argc, argv, &about);
  24. KCmdLineArgs::addCmdLineOptions( options );
  25. KApplication app;
  26. KDEsimpleapp *mainWin = 0;
  27.  
  28. if (app.isRestored())
  29. {
  30. RESTORE(KDEsimpleapp);
  31. }
  32. else
  33. {
  34. // no session.. just start up normally
  35. KCmdLineArgs *args = KCmdLineArgs::parsedArgs();
  36.  
  37. /// @todo do something with the command line args here
  38.  
  39. mainWin = new KDEsimpleapp();
  40. app.setMainWidget( mainWin );
  41. mainWin->show();
  42.  
  43. args->clear();
  44. }
  45.  
  46. // mainWin has WDestructiveClose flag by default, so it will delete itself.
  47. return app.exec();
  48. }
To copy to clipboard, switch view to plain text mode 

kdesimpleapp.cpp
Qt Code:
  1. #include "kdesimpleapp.h"
  2.  
  3. #include <qlabel.h>
  4.  
  5. #include <kmainwindow.h>
  6. #include <klocale.h>
  7.  
  8. KDEsimpleapp::KDEsimpleapp()
  9. : KMainWindow( 0, "KDEsimpleapp" )
  10. {
  11. // set the shell's ui resource file
  12. setXMLFile("kdesimpleappui.rc");
  13.  
  14. new QLabel( "Hello World", this, "hello label" );
  15. }
  16.  
  17. KDEsimpleapp::~KDEsimpleapp()
  18. {
  19. }
  20.  
  21. #include "kdesimpleapp.moc"
To copy to clipboard, switch view to plain text mode 

kdesimpleapp.h
Qt Code:
  1. #ifndef _KDESIMPLEAPP_H_
  2. #define _KDESIMPLEAPP_H_
  3.  
  4. #ifdef HAVE_CONFIG_H
  5. #include <config.h>
  6. #endif
  7.  
  8. #include <kmainwindow.h>
  9.  
  10. /**
  11.  * @short Application Main Window
  12.  * @author unknown,,, <unknown@unknown>
  13.  * @version 0.1
  14.  */
  15. class KDEsimpleapp : public KMainWindow
  16. {
  17. Q_OBJECT
  18. public:
  19. /**
  20.   * Default Constructor
  21.   */
  22. KDEsimpleapp();
  23.  
  24. /**
  25.   * Default Destructor
  26.   */
  27. virtual ~KDEsimpleapp();
  28. };
  29.  
  30. #endif // _KDESIMPLEAPP_H_
To copy to clipboard, switch view to plain text mode 

part of my valgrind output:
Qt Code:
  1. ==23225== ERROR SUMMARY: 25 errors from 12 contexts (suppressed: 97 from 1)
  2. ==23225== malloc/free: in use at exit: 190,786 bytes in 2,530 blocks.
  3. ==23225== malloc/free: 137,830 allocs, 135,300 frees, 5,833,593 bytes allocated.
  4. ==23225== For counts of detected errors, rerun with: -v
  5. ==23225== searching for pointers to 2,530 not-freed blocks.
  6. ==23225== checked 1,115,428 bytes.
  7. ==23225==
  8. ==23225==
  9. ==23225== 38 bytes in 2 blocks are definitely lost in loss record 71 of 149
  10. ==23225== at 0x4022765: malloc (vg_replace_malloc.c:149)
  11. ==23225== by 0x4F848A7: FcStrCopy (in /usr/lib/libfontconfig.so.1.2.0)
  12. ==23225== by 0x4F87DEC: (within /usr/lib/libfontconfig.so.1.2.0)
  13. ==23225== by 0x538E3D5: (within /usr/lib/libexpat.so.1.0.0)
  14. ==23225== by 0x538F05C: (within /usr/lib/libexpat.so.1.0.0)
  15. ==23225== by 0x539005D: (within /usr/lib/libexpat.so.1.0.0)
  16. ==23225== by 0x5390FA4: (within /usr/lib/libexpat.so.1.0.0)
  17. ==23225== by 0x538878A: XML_ParseBuffer (in /usr/lib/libexpat.so.1.0.0)
  18. ==23225== by 0x4F86F0B: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
  19. ==23225== by 0x4F87205: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
  20. ==23225== by 0x4F87307: (within /usr/lib/libfontconfig.so.1.2.0)
  21. ==23225== by 0x4F87771: (within /usr/lib/libfontconfig.so.1.2.0)
  22. ==23225==
  23. ==23225==
  24. ==23225== 156 (36 direct, 120 indirect) bytes in 1 blocks are definitely lost in loss record 89 of 149
  25. ==23225== at 0x4022765: malloc (vg_replace_malloc.c:149)
  26. ==23225== by 0x531A9B2: (within /lib/tls/i686/cmov/libc-2.6.1.so)
  27. ==23225== by 0x531B208: __nss_database_lookup (in /lib/tls/i686/cmov/libc-2.6.1.so)
  28. ==23225== by 0x5855FDB: ???
  29. ==23225== by 0x585711C: ???
  30. ==23225== by 0x52C7EEB: getpwuid_r (in /lib/tls/i686/cmov/libc-2.6.1.so)
  31. ==23225== by 0x52C789D: getpwuid (in /lib/tls/i686/cmov/libc-2.6.1.so)
  32. ==23225== by 0x448853A: KStandardDirs::addCustomized(KConfig*) (in /usr/lib/libkdecore.so.4.2.0)
  33. ==23225== by 0x448E59C: KConfig::KConfig(QString const&, bool, bool, char const*) (in /usr/lib/libkdecore.so.4.2.0)
  34. ==23225== by 0x448EBBF: KSharedConfig::KSharedConfig(QString const&, bool, bool) (in /usr/lib/libkdecore.so.4.2.0)
  35. ==23225== by 0x448EDC0: KSharedConfig::openConfig(QString const&, bool, bool) (in /usr/lib/libkdecore.so.4.2.0)
  36. ==23225== by 0x448F14D: KInstance::config() const (in /usr/lib/libkdecore.so.4.2.0)
  37. ==23225==
  38. ==23225==
  39. ==23225== 316 (256 direct, 60 indirect) bytes in 2 blocks are definitely lost in loss record 109 of 149
  40. ==23225== at 0x4022765: malloc (vg_replace_malloc.c:149)
  41. ==23225== by 0x4F82363: (within /usr/lib/libfontconfig.so.1.2.0)
  42. ==23225== by 0x4F82C63: (within /usr/lib/libfontconfig.so.1.2.0)
  43. ==23225== by 0x4F82D67: (within /usr/lib/libfontconfig.so.1.2.0)
  44. ==23225== by 0x4F87CD0: (within /usr/lib/libfontconfig.so.1.2.0)
  45. ==23225== by 0x538E3D5: (within /usr/lib/libexpat.so.1.0.0)
  46. ==23225== by 0x538F05C: (within /usr/lib/libexpat.so.1.0.0)
  47. ==23225== by 0x539005D: (within /usr/lib/libexpat.so.1.0.0)
  48. ==23225== by 0x5390FA4: (within /usr/lib/libexpat.so.1.0.0)
  49. ==23225== by 0x538878A: XML_ParseBuffer (in /usr/lib/libexpat.so.1.0.0)
  50. ==23225== by 0x4F86F0B: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
  51. ==23225== by 0x4F87205: FcConfigParseAndLoad (in /usr/lib/libfontconfig.so.1.2.0)
  52. ==23225==
  53. ==23225==
  54. ==23225== 2,224 (768 direct, 1,456 indirect) bytes in 2 blocks are definitely lost in loss record 138 of 149
  55. ==23225== at 0x4022862: realloc (vg_replace_malloc.c:306)
  56. ==23225== by 0x4F822A3: (within /usr/lib/libfontconfig.so.1.2.0)
  57. ==23225== by 0x4F82C63: (within /usr/lib/libfontconfig.so.1.2.0)
  58. ==23225== by 0x4F8315B: (within /usr/lib/libfontconfig.so.1.2.0)
  59. ==23225== by 0x4F7FA0F: FcFontRenderPrepare (in /usr/lib/libfontconfig.so.1.2.0)
  60. ==23225== by 0x4F7FBF7: FcFontSetMatch (in /usr/lib/libfontconfig.so.1.2.0)
  61. ==23225== by 0x4F7FDA9: FcFontMatch (in /usr/lib/libfontconfig.so.1.2.0)
  62. ==23225== by 0x4EF2A3F: XftFontMatch (in /usr/lib/libXft.so.2.1.2)
  63. ==23225== by 0x492B66B: (within /usr/lib/libqt-mt.so.3.3.7)
  64. ==23225== by 0x4930E7C: QFontDatabase::findFont(QFont::Script, QFontPrivate const*, QFontDef const&, int) (in /usr/lib/libqt-mt.so.3.3.7)
  65. ==23225== by 0x48AC988: QFontPrivate::load(QFont::Script) (in /usr/lib/libqt-mt.so.3.3.7)
  66. ==23225== by 0xso.3.3.7)
  67. ==23225==
  68. ==23225== LEAK SUMMARY:
  69. ==23225== definitely lost: 1,098 bytes in 7 blocks.
  70. ==23225== indirectly lost: 1,636 bytes in 85 blocks.
  71. ==23225== possibly lost: 0 bytes in 0 blocks.
  72. ==23225== still reachable: 188,052 bytes in 2,438 blocks.
  73. ==23225== suppressed: 0 bytes in 0 blocks.
  74. ==23225== Reachable blocks (those to which a pointer was found) are not shown.
  75. ==23225== To see them, rerun with: --leak-check=full --show-reachable=yes
To copy to clipboard, switch view to plain text mode