From 2ce4f6f7a248158d4f79738d72e54e6ff46adb2a Mon Sep 17 00:00:00 2001 From: silverf0x Date: Wed, 28 Aug 2019 21:16:58 +0200 Subject: [PATCH] Fix #35: Hang with VBS enabled due to EnumProcessModulesEx ignored return value --- RpcCore/RpcCore.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/RpcCore/RpcCore.c b/RpcCore/RpcCore.c index 5db1837..f181b8c 100644 --- a/RpcCore/RpcCore.c +++ b/RpcCore/RpcCore.c @@ -223,11 +223,10 @@ BOOL WINAPI GetRpcServerAddressInProcess(DWORD Pid,RpcCoreInternalCtxt_T* pRpcCo hProcess = ProcexpOpenProcess(PROCESS_ALL_ACCESS, FALSE, Pid); if (hProcess == NULL) goto End; - EnumProcessModulesEx(hProcess, NULL, 0, &cbSize, LIST_MODULES_ALL); - if (cbSize == 0) goto End; + if (!EnumProcessModulesEx(hProcess, NULL, 0, &cbSize, LIST_MODULES_ALL)) goto End; pHmodule = (HMODULE*)malloc(cbSize); if (pHmodule == NULL) goto End; - EnumProcessModulesEx(hProcess, pHmodule, cbSize, &cbSize, LIST_MODULES_ALL); + if (!EnumProcessModulesEx(hProcess, pHmodule, cbSize, &cbSize, LIST_MODULES_ALL)) goto End; for(ULONG i=0;i