diff --git a/dlls/ntdll/loader.c b/dlls/ntdll/loader.c index 2826d19a268e25938d3950bcca6bc1bc7cf52fd0..bdf09f375cfbd887d8636ea67e98a459348850cc 100644 --- a/dlls/ntdll/loader.c +++ b/dlls/ntdll/loader.c @@ -1806,7 +1806,11 @@ NTSTATUS WINAPI LdrGetDllHandle( LPCWSTR load_path, ULONG flags, const UNICODE_S if (filename != buffer) RtlFreeHeap( GetProcessHeap(), 0, filename ); if (status != STATUS_BUFFER_TOO_SMALL) break; /* grow the buffer and retry */ - if (!(filename = RtlAllocateHeap( GetProcessHeap(), 0, size ))) return STATUS_NO_MEMORY; + if (!(filename = RtlAllocateHeap( GetProcessHeap(), 0, size ))) + { + status = STATUS_NO_MEMORY; + break; + } } if (status == STATUS_SUCCESS)