Changeset 107229 in vbox
- Timestamp:
- Dec 4, 2024 9:01:51 PM (8 weeks ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Main/src-server/MediumImpl.cpp
r106976 r107229 4819 4819 } 4820 4820 4821 /* if the backref becomes empty, remove it */ 4822 if (it->fInCurState == false && it->iRefCnt == 0 && it->llSnapshotIds.size() == 0) 4821 /* The common case is that the backref will become "empty" with the reference 4822 * count dropping to zero (iRefCnt=0), fInCurState=false, and no more snapshot 4823 * references (llSnapshotIds.size()=0) and thus the back reference is removed 4824 * at that point. However there is an exception and that is when a restored 4825 * snapshot is running and in that case there will be no i_removeBackReference() 4826 * call for any attached removable device referencing just the machine 4827 * (aSnapshotId.isZero()) so in such cases iRefCnt will be '1' and won't ever 4828 * drop to zero so remove such back references here as well. */ 4829 if ( it->fInCurState == false 4830 && it->llSnapshotIds.size() == 0 4831 && (it->iRefCnt == 0 || (fDvd && it->iRefCnt == 1))) 4823 4832 m->backRefs.erase(it); 4824 4833
Note:
See TracChangeset
for help on using the changeset viewer.