From: Timo Kreuzer Date: Tue, 24 Nov 2015 22:04:39 +0000 (+0000) Subject: [WIN32K] X-Git-Tag: ReactOS-0.4.0~60^2~4 X-Git-Url: https://git.reactos.org/?p=reactos.git;a=commitdiff_plain;h=fa9f7f4b4112d3d830b6e833ed66305bcbf2a1ea;ds=sidebyside [WIN32K] "Gracyfully" (i.e. ignore, like Windows does) handle hsem == NULL in EngAcquireSemaphore Should fix crash of QXL Virtual GPU driver installer CORE-9779 #comment Please retest. svn path=/trunk/; revision=70103 --- diff --git a/reactos/win32ss/gdi/eng/semaphor.c b/reactos/win32ss/gdi/eng/semaphor.c index 020718630ef..48ee574f24a 100644 --- a/reactos/win32ss/gdi/eng/semaphor.c +++ b/reactos/win32ss/gdi/eng/semaphor.c @@ -42,7 +42,14 @@ EngAcquireSemaphore( { // www.osr.com/ddk/graphics/gdifncs_14br.htm PTHREADINFO W32Thread; - ASSERT(hsem); + + /* On Windows a NULL hsem is ignored */ + if (hsem == NULL) + { + DPRINT1("EngAcquireSemaphore called with hsem == NULL!\n"); + return; + } + ExEnterCriticalRegionAndAcquireResourceExclusive((PERESOURCE)hsem); W32Thread = PsGetThreadWin32Thread(PsGetCurrentThread()); if (W32Thread) W32Thread->dwEngAcquireCount++;