VirtualBox

Changeset 10834

Show
Ignore:
Timestamp:
07/23/08 17:02:33 (2 months ago)
Author:
vboxsync
Message:

Additions/common: guest property fixes

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/VBox/Additions/common/VBoxControl/VBoxControl.cpp

    r10829 r10834  
    907907        for (unsigned i = 0; (i < 10) && !finish; ++i) 
    908908        { 
    909             pvBuf = RTMemRealloc(pvBuf, cbBuf); 
    910             if (NULL == pvBuf) 
     909            void *pvTmpBuf = RTMemRealloc(pvBuf, cbBuf); 
     910            if (NULL == pvTmpBuf) 
    911911            { 
     912                RTMemFree(pvBuf); 
    912913                rc = VERR_NO_MEMORY; 
    913914                VBoxControlError("Out of memory\n"); 
    914915            } 
    915916            else 
     917            { 
     918                pvBuf = pvTmpBuf; 
    916919                rc = VbglR3GuestPropRead(u32ClientId, pszName, pvBuf, cbBuf, 
    917920                                         &pszValue, &u64Timestamp, &pszFlags, 
    918921                                         &cbBuf); 
     922            } 
    919923            if (VERR_BUFFER_OVERFLOW == rc) 
    920924                /* Leave a bit of extra space to be safe */ 
     
    943947    if (u32ClientId != 0) 
    944948        VbglR3GuestPropDisconnect(u32ClientId); 
    945     VbglR3GuestPropReadValueFree(pszValue); 
    946949    return RT_SUCCESS(rc) ? 0 : 1; 
    947950} 
  • trunk/src/VBox/Additions/common/VBoxGuestLib/VBoxGuestR3LibGuestProp.cpp

    r10829 r10834  
    270270    for (unsigned i = 0; (i < 10) && !finish; ++i) 
    271271    { 
    272         pvBuf = RTMemRealloc(pvBuf, cchBuf); 
    273         if (NULL == pvBuf) 
     272        void *pvTmpBuf = RTMemRealloc(pvBuf, cchBuf); 
     273        if (NULL == pvTmpBuf) 
     274        { 
     275            RTMemFree(pvBuf); 
    274276            rc = VERR_NO_MEMORY; 
     277        } 
    275278        else 
     279        { 
     280            pvBuf = pvTmpBuf; 
    276281            rc = VbglR3GuestPropRead(u32ClientId, pszName, pvBuf, cchBuf, 
    277282                                     &pszValue, NULL, NULL, &cchBuf); 
     283        } 
    278284        if (VERR_BUFFER_OVERFLOW == rc) 
    279285            /* Leave a bit of extra space to be safe */ 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy