Changeset 11488 in vbox for trunk/src/VBox/VMM/VMMAll
- Timestamp:
- Aug 19, 2008 2:24:46 PM (17 years ago)
- svn:sync-xref-src-repo-rev:
- 34985
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/VMM/VMMAll/EMAll.cpp
r11453 r11488 1365 1365 else 1366 1366 { 1367 int offIncrement = pRegFrame->eflags.Bits.u1DF ? -(signed)cbSize : (signed)cbSize; 1368 1369 if (!cTransfers) 1370 return VINF_SUCCESS; 1371 1367 1372 /* Access verification first; we currently can't recover properly from traps inside this instruction */ 1368 rc = PGMVerifyAccess(pVM, GCDest , cTransfers * cbSize, X86_PTE_RW | X86_PTE_US);1373 rc = PGMVerifyAccess(pVM, GCDest - (offIncrement > 0) ? 0 : ((cTransfers-1) * cbSize), cTransfers * cbSize, X86_PTE_RW | X86_PTE_US); 1369 1374 if (rc != VINF_SUCCESS) 1370 1375 { … … 1384 1389 1385 1390 Assert(rc == VINF_SUCCESS); 1386 GCOffset += cbSize;1387 GCDest += cbSize;1391 GCOffset += offIncrement; 1392 GCDest += offIncrement; 1388 1393 cTransfers--; 1389 1394 }
Note:
See TracChangeset
for help on using the changeset viewer.