Changeset 33975 in vbox
- Timestamp:
- Nov 11, 2010 11:14:54 AM (14 years ago)
- svn:sync-xref-src-repo-rev:
- 67637
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Runtime/common/vfs/vfsbase.cpp
r33973 r33975 369 369 */ 370 370 rtVfsObjWriteLock(pThis); /* paranoia */ 371 void *pvToFree; 371 372 switch (enmType) 372 373 { 373 374 case RTVFSOBJTYPE_BASE: 375 pvToFree = pThis; 374 376 break; 375 377 376 378 case RTVFSOBJTYPE_VFS: 379 pvToFree = RT_FROM_MEMBER(pThis, RTVFSINTERNAL, Base); 377 380 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSINTERNAL, Base)->uMagic, RTVFS_MAGIC_DEAD); 378 381 break; 379 382 380 383 case RTVFSOBJTYPE_FS_STREAM: 384 pvToFree = RT_FROM_MEMBER(pThis, RTVFSFSSTREAMINTERNAL, Base); 381 385 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSFSSTREAMINTERNAL, Base)->uMagic, RTVFSFSSTREAM_MAGIC_DEAD); 382 386 break; 383 387 384 388 case RTVFSOBJTYPE_IO_STREAM: 389 pvToFree = RT_FROM_MEMBER(pThis, RTVFSIOSTREAMINTERNAL, Base); 385 390 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSIOSTREAMINTERNAL, Base)->uMagic, RTVFSIOSTREAM_MAGIC_DEAD); 386 391 break; 387 392 388 393 case RTVFSOBJTYPE_DIR: 394 pvToFree = RT_FROM_MEMBER(pThis, RTVFSDIRINTERNAL, Base); 389 395 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSDIRINTERNAL, Base)->uMagic, RTVFSDIR_MAGIC_DEAD); 390 396 break; 391 397 392 398 case RTVFSOBJTYPE_FILE: 399 pvToFree = RT_FROM_MEMBER(pThis, RTVFSFILEINTERNAL, Stream.Base); 400 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSFILEINTERNAL, Stream.Base)->uMagic, RTVFSFILE_MAGIC_DEAD); 393 401 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSIOSTREAMINTERNAL, Base)->uMagic, RTVFSIOSTREAM_MAGIC_DEAD); 394 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSFILEINTERNAL, Stream.Base)->uMagic, RTVFSFILE_MAGIC_DEAD);395 402 break; 396 403 397 404 case RTVFSOBJTYPE_SYMLINK: 405 pvToFree = RT_FROM_MEMBER(pThis, RTVFSSYMLINKINTERNAL, Base); 398 406 ASMAtomicWriteU32(&RT_FROM_MEMBER(pThis, RTVFSSYMLINKINTERNAL, Base)->uMagic, RTVFSSYMLINK_MAGIC_DEAD); 399 407 break; … … 414 422 int rc = pThis->pOps->pfnClose(pThis->pvThis); 415 423 AssertRC(rc); 416 RTMemFree(p This);424 RTMemFree(pvToFree); 417 425 } 418 426
Note:
See TracChangeset
for help on using the changeset viewer.