Daniel Lehman : server: Always close previous IRP handle.

Alexandre Julliard julliard at winehq.org
Mon Mar 14 17:47:35 CDT 2022


Module: wine
Branch: master
Commit: 2fc3d7eb2912b189ab38c0683f16e97cf9987362
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=2fc3d7eb2912b189ab38c0683f16e97cf9987362

Author: Daniel Lehman <dlehman at esri.com>
Date:   Thu Mar 10 16:18:13 2022 -0800

server: Always close previous IRP handle.

Signed-off-by: Daniel Lehman <dlehman at esri.com>
Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 server/device.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/server/device.c b/server/device.c
index d6288920bf4..436dac6bfe9 100644
--- a/server/device.c
+++ b/server/device.c
@@ -959,7 +959,6 @@ DECL_HANDLER(get_next_device_request)
             if (req->prev)
             {
                 set_irp_result( irp, req->iosb_status, get_req_data(), get_req_data_size(), req->result );
-                close_handle( current->process, req->prev );  /* avoid an extra round-trip for close */
             }
             else
             {
@@ -977,6 +976,9 @@ DECL_HANDLER(get_next_device_request)
             set_irp_result( irp, req->status, NULL, 0, 0 );
         }
 
+        if (req->prev)
+            close_handle( current->process, req->prev );  /* avoid an extra round-trip for close */
+
         free_irp_params( irp );
         release_object( irp );
         manager->current_call = NULL;




More information about the wine-cvs mailing list