From c7f5e6eb5e350f87e5b901dc7e5b9a8c65d8bbe5 Mon Sep 17 00:00:00 2001 From: Viktor Szakats Date: Tue, 20 Jun 2006 07:45:51 +0000 Subject: [PATCH] 2006-06-20 09:45 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) * harbour/source/rtl/gtwin/gtwin.c * harbour/source/rtl/gtwxt/gtwxt.c ! Possible (double) fix to properly handle embedded zero bytes when getting clipboard content. --- harbour/ChangeLog | 6 ++++++ harbour/source/rtl/gtwin/gtwin.c | 4 ++-- harbour/source/rtl/gtwvt/gtwvt.c | 6 +++--- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 189a14277c..3af520f9c5 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -8,6 +8,12 @@ 2002-12-01 13:30 UTC+0100 Foo Bar */ + * hidden for 3-rd party users hb_objGetMethod() and hb_objPopSuperCast() + If for some reason 3-rd party code will need these methods please + tell me in which case and I'll add necessary functions. Please + try to not use any non-public function. I strongly prefer to + add new public functions for which we will know that they are used + by 3-rd party code then create problems with binary compatibility after updating local HVM functions. 2006-06-20 11:33 UTC+0100 Viktor Szakats (viktor.szakats syenar.hu) diff --git a/harbour/source/rtl/gtwin/gtwin.c b/harbour/source/rtl/gtwin/gtwin.c index 8abddb7c5e..1cefb15f4d 100644 --- a/harbour/source/rtl/gtwin/gtwin.c +++ b/harbour/source/rtl/gtwin/gtwin.c @@ -1795,7 +1795,7 @@ static BOOL hb_gt_win_GetClipboard( char ** pszClipData, ULONG *pulLen ) lptstr = ( LPSTR ) GlobalLock( hglb ); if ( lptstr != NULL ) { - *pulLen = strlen( lptstr ); + *pulLen = GlobalSize( hglb ); if( *pulLen ) { @@ -1882,7 +1882,7 @@ static BOOL hb_gt_win_Info( int iType, PHB_GT_INFO pInfo ) { pInfo->pResult = hb_itemPutCPtr( pInfo->pResult, szClipboardData, - strlen( szClipboardData ) ); + ulLen ); } else { diff --git a/harbour/source/rtl/gtwvt/gtwvt.c b/harbour/source/rtl/gtwvt/gtwvt.c index bf2a68fc2c..16a4ba5bb8 100644 --- a/harbour/source/rtl/gtwvt/gtwvt.c +++ b/harbour/source/rtl/gtwvt/gtwvt.c @@ -1228,7 +1228,7 @@ static BOOL hb_gt_wvt_GetClipboard( char ** pszClipData, ULONG *pulLen ) lptstr = ( LPSTR ) GlobalLock( hglb ); if ( lptstr != NULL ) { - *pulLen = strlen( lptstr ); + *pulLen = GlobalSize( hglb ); if( *pulLen ) { @@ -1700,7 +1700,7 @@ static int hb_gt_wvt_mouse_CountButton( void ) { HB_TRACE( HB_TR_DEBUG, ( "hb_gt_wvt_mouse_CountButton()") ); - return( GetSystemMetrics( SM_CMOUSEBUTTONS ) ) ; + return( GetSystemMetrics( SM_CMOUSEBUTTONS ) ) ; } /* *********************************************************************** */ @@ -1989,7 +1989,7 @@ static BOOL hb_gt_wvt_Info( int iType, PHB_GT_INFO pInfo ) { pInfo->pResult = hb_itemPutCPtr( pInfo->pResult, szClipboardData, - strlen( szClipboardData ) ); + ulLen ); } else {