From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 2155) id B34D33851C35; Wed, 10 Feb 2021 09:52:07 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org B34D33851C35 Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit From: Corinna Vinschen To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: check path_conv_handle for NULL before trying to dup it X-Act-Checkin: newlib-cygwin X-Git-Author: Corinna Vinschen X-Git-Refname: refs/heads/master X-Git-Oldrev: 5f0913df13f227aa8087ed39ae1ac5ddf98e5671 X-Git-Newrev: d0e0a59e7880739abe47bf217ee958c6233c6ef7 Message-Id: <20210210095207.B34D33851C35@sourceware.org> Date: Wed, 10 Feb 2021 09:52:07 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Feb 2021 09:52:07 -0000 https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=d0e0a59e7880739abe47bf217ee958c6233c6ef7 commit d0e0a59e7880739abe47bf217ee958c6233c6ef7 Author: Corinna Vinschen Date: Wed Feb 10 10:39:03 2021 +0100 Cygwin: check path_conv_handle for NULL before trying to dup it path_conv_handle::dup calls DuplicateHandle unconditionally, but we only have a handle in some cases. Check handle for being non-NULL before calling DuplicateHandle. Signed-off-by: Corinna Vinschen Diff: --- winsup/cygwin/path.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/winsup/cygwin/path.h b/winsup/cygwin/path.h index 33e7fdf6a..fe4dd5478 100644 --- a/winsup/cygwin/path.h +++ b/winsup/cygwin/path.h @@ -105,9 +105,10 @@ public: } inline void dup (const path_conv_handle &pch) { - if (!DuplicateHandle (GetCurrentProcess (), pch.handle (), - GetCurrentProcess (), &hdl, - 0, TRUE, DUPLICATE_SAME_ACCESS)) + if (pch.handle () + && !DuplicateHandle (GetCurrentProcess (), pch.handle (), + GetCurrentProcess (), &hdl, + 0, TRUE, DUPLICATE_SAME_ACCESS)) hdl = NULL; } inline HANDLE handle () const { return hdl; }