- Timestamp:
- Jan 21, 2013 9:16:41 AM (12 years ago)
- svn:sync-xref-src-repo-rev:
- 83244
- Location:
- trunk/src/VBox/Main
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/include/VirtualBoxImpl.h
r43041 r44316 246 246 ComObjPtr<Medium> &pMedium); 247 247 248 HRESULT checkMediaForConflicts(const Guid &aId, 249 const Utf8Str &aLocation, 250 Utf8Str &aConflictType, 251 ComObjPtr<Medium> *pDupMedium); 252 248 253 HRESULT findGuestOSType(const Bstr &bstrOSType, 249 254 GuestOSType*& pGuestOSType); … … 309 314 return setErrorInternal(aResultCode, getStaticClassIID(), getStaticComponentName(), aText, false, true); 310 315 } 311 312 HRESULT checkMediaForConflicts(const Guid &aId,313 const Utf8Str &aLocation,314 Utf8Str &aConflictType,315 ComObjPtr<Medium> *pDupMedium);316 316 317 317 HRESULT registerMachine(Machine *aMachine); -
trunk/src/VBox/Main/src-server/MediumImpl.cpp
r44240 r44316 974 974 AutoWriteLock treeLock(m->pVirtualBox->getMediaTreeLockHandle() COMMA_LOCKVAL_SRC_POS); 975 975 ComObjPtr<Medium> pMedium; 976 977 /* 978 * Check whether the UUID is taken already and create a new one 979 * if required. 980 */ 981 do 982 { 983 Utf8Str strConflict; 984 ComObjPtr<Medium> pMediumDup; 985 986 rc = m->pVirtualBox->checkMediaForConflicts(m->id, Utf8Str(""), 987 strConflict, &pMediumDup); 988 if ( SUCCEEDED(rc) 989 && strConflict.length() 990 && pMediumDup.isNull()) 991 { 992 // create new UUID 993 unconst(m->id).create(); 994 } 995 else 996 break; 997 } while (true); 998 976 999 rc = m->pVirtualBox->registerMedium(this, &pMedium, DeviceType_HardDisk); 977 Assert(this == pMedium );1000 Assert(this == pMedium || FAILED(rc)); 978 1001 } 979 1002 -
trunk/src/VBox/Main/src-server/VirtualBoxImpl.cpp
r44043 r44316 3844 3844 ComObjPtr<Medium> *ppMedium) 3845 3845 { 3846 AssertReturn(!aId.isZero() && !aLocation.isEmpty(), E_FAIL);3846 AssertReturn(!aId.isZero(), E_FAIL); 3847 3847 AssertReturn(ppMedium, E_INVALIDARG); 3848 3848
Note:
See TracChangeset
for help on using the changeset viewer.