VirtualBox

Changeset 55461 in vbox


Ignore:
Timestamp:
Apr 27, 2015 5:21:57 PM (9 years ago)
Author:
vboxsync
Message:

HostServices/Service.h: Better error check for copyParmsInternal().

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/VBox/HostServices/Service.h

    r55460 r55461  
    198198                    }
    199199
    200                     if (   paParmsDst[i].u.pointer.addr
    201                         && paParmsSrc[i].u.pointer.size > 0
    202                         && paParmsDst[i].u.pointer.size > 0)
     200                    if (paParmsSrc[i].u.pointer.size)
    203201                    {
    204                         memcpy(paParmsDst[i].u.pointer.addr,
    205                                paParmsSrc[i].u.pointer.addr,
    206                                RT_MIN(paParmsDst[i].u.pointer.size, paParmsSrc[i].u.pointer.size));
     202                        if (   paParmsDst[i].u.pointer.addr
     203                            && paParmsDst[i].u.pointer.size)
     204                        {
     205                            memcpy(paParmsDst[i].u.pointer.addr,
     206                                   paParmsSrc[i].u.pointer.addr,
     207                                   RT_MIN(paParmsDst[i].u.pointer.size, paParmsSrc[i].u.pointer.size));
     208                        }
     209                        else
     210                            rc = VERR_INVALID_POINTER;
    207211                    }
    208                     else
    209                         rc = VERR_INVALID_POINTER;
    210212                    break;
    211213                }
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette