A free Windows-compatible Operating System - mirrored from GitHub
Go to file
Alex Ionescu 8d2254b37e - Fix I/O Completion (IopCompleteRequest/IofCompleteRequest) for the first time after the 40-thread long flame war last year:
- Don't read pointers from the file object or IRP before they are actually used, because in some parts of the code, these pointers could change before we actually use them.
  - Get rid of the #if 1/#if 0 nonsense hbirr had added.
  - Properly check for success/warning/failure cases (thanks to Filip for checking this out with me last year)
  - Handle scenarios when the IRP is marked IRP_CREATE_OPERATION
  - Bugcheck if IofCompleteRequest is called twice on the same IRP
  - Copy the master IRP's thread to the associated IRP
  - Free the Auxiliary Buffer if there is one.
  - Some formatting fixes, and majorly recomment the code to make it a lot clearer and more verbose on some of the more intricate details.
  - Remove some hacks which I don't think are needed anymore. If you notice regressions due to this patch let me know ASAP.

svn path=/trunk/; revision=22704
2006-06-30 03:15:56 +00:00
cis Handle access denied scenario 2005-12-13 18:56:49 +00:00
irc Remove all curses except 'semprini'. 2006-06-26 16:39:23 +00:00
msvc6
os2 OS/2: more changes to make it conform to rbuild. 2005-08-12 20:55:07 +00:00
reactos - Fix I/O Completion (IopCompleteRequest/IofCompleteRequest) for the first time after the 40-thread long flame war last year: 2006-06-30 03:15:56 +00:00
rosapps move back packmgr did move it by mistake 2006-06-20 21:12:15 +00:00
rosky
vms Modify to conform to the new CSR. 2005-10-02 19:31:30 +00:00