Hi Pritpal,

 

Could you please definitively switch in your development environment the
release method  to HBQT_RELEASE_WITH_DELETE:

 

   //HBQT_SET_RELEASE_METHOD( HBQT_RELEASE_WITH_DESTRUTOR )             //
Exits cleanly
   HBQT_SET_RELEASE_METHOD( HBQT_RELEASE_WITH_DELETE )                  //
Exits cleanly
   //HBQT_SET_RELEASE_METHOD( HBQT_RELEASE_WITH_DELETE_LATER )          //
Exits cleanly



In QUiLoader.cpp I changed temporarily the QT_QUILOADER_LOAD to: 

 

/*
 * QWidget * load ( QIODevice * device, QWidget * parentWidget = 0 )
 */
HB_FUNC( QT_QUILOADER_LOAD )
{
//   hb_retptr( ( QWidget* ) hbqt_par_QUiLoader( 1 )->load(
hbqt_par_QIODevice( 2 ), hbqt_par_QWidget( 3 ) ) );
   hb_retptrGC( hbqt_gcAllocate_QWidget( ( QWidget* ) hbqt_par_QUiLoader( 1
)->load( hbqt_par_QIODevice( 2 ), hbqt_par_QWidget( 3 ) ) ) );
}

reducing the FM statistic to:

 

----------------------------------------

Total memory allocated: 2383683 bytes (31688 block(s))

Warning, memory allocated but not released: 132 bytes (10 block(s))

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 1 (size 4)
QT_QUILOADER(0), "7083FB01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 2 (size 8)
QT_QUILOADER_LOAD(0), "0600000000A4CF01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 3 (size 8)
QT_QUILOADER_LOAD(0), "07000000E0A5FB01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 4 (size 8)
QT_QUILOADER_LOAD(0), "0800000000EFCE01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 5 (size 8)
QT_QUILOADER_LOAD(0), "0900000030EFCE01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 6 (size 8)
QT_QUILOADER_LOAD(0), "0A000000B029D001"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 7 (size 12)
QT_QUILOADER_LOAD(0), "020000001B00000060A3CF01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 8 (size 12)
QT_QUILOADER_LOAD(0), "030000001D000000C0ECCE01"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 9 (size 12)
QT_QUILOADER_LOAD(0), "040000001E000000E029D001"

c:\downloads\harbour\src\vm\fm.c:1143: HB_TR_ERROR Block 10 (size 12)
QT_QUILOADER_LOAD(0), "050000001F000000F0ECCE01" 

 

Maybe we should have here a general solution for the wrappers returning
objects, some of them are already solved with inserting their pointers to
the GC system evidence.

 

Best regards,

István

 

_______________________________________________
Harbour mailing list (attachment size limit: 40KB)
[email protected]
http://lists.harbour-project.org/mailman/listinfo/harbour

Reply via email to