diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 3c2137f1a7..9355522cef 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -16,6 +16,10 @@ The license applies to all entries newer than 2009-04-28. */ +2011-03-09 22:13 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) + * contrib/hbqt/qtcore/hbqt_pointer.cpp + ! Missing hb_xfree() when remerging my old changes to recent C++ migration patch. + 2011-03-09 21:32 UTC+0100 Viktor Szakats (harbour.01 syenar.hu) * src/rtl/hbzlibgz.c ! In block declaration in recent patch. diff --git a/harbour/contrib/hbqt/qtcore/hbqt_pointer.cpp b/harbour/contrib/hbqt/qtcore/hbqt_pointer.cpp index 659f117c28..3dad7b139a 100644 --- a/harbour/contrib/hbqt/qtcore/hbqt_pointer.cpp +++ b/harbour/contrib/hbqt/qtcore/hbqt_pointer.cpp @@ -449,7 +449,6 @@ PHB_ITEM hbqt_defineClassBegin( const char * szClsName, PHB_ITEM s_oClass, const static PHB_DYNS s___HBCLASS = NULL; char * pszParentClsBuffer = hb_strdup( szParentClsStr ); - char * szSingleClsName; if( s___HBCLASS == NULL ) s___HBCLASS = hb_dynsymGetCase( "HBCLASS" ); @@ -465,17 +464,21 @@ PHB_ITEM hbqt_defineClassBegin( const char * szClsName, PHB_ITEM s_oClass, const HB_TRACE( HB_TR_DEBUG, ("%s: dCB 3", szClsName ) ); - szSingleClsName = strtok( pszParentClsBuffer, " ," ); - - PHB_ITEM pItem = hb_itemNew( NULL ); - - while( szSingleClsName != NULL ) { - hb_itemPutC( pItem, szSingleClsName ); - hb_arrayAdd( pSuper, hb_itemPutSymbol( pItem, hb_dynsymGetCase( szSingleClsName )->pSymbol ) ); - szSingleClsName = strtok( NULL, " ," ); + char * szSingleClsName = strtok( pszParentClsBuffer, " ," ); + PHB_ITEM pItem = hb_itemNew( NULL ); + + while( szSingleClsName != NULL ) + { + hb_itemPutC( pItem, szSingleClsName ); + hb_arrayAdd( pSuper, hb_itemPutSymbol( pItem, hb_dynsymGetCase( szSingleClsName )->pSymbol ) ); + szSingleClsName = strtok( NULL, " ," ); + } + + hb_itemRelease( pItem ); } - hb_itemRelease( pItem ); + + hb_xfree( pszParentClsBuffer ); hb_itemPutSymbol( pSym_ClsFunc, hb_dynsymGetCase( szClsName )->pSymbol );