[resend] dbghelp: Crash fix in module_find_cb on trying to parse non image files.

Marcus Meissner marcus at jet.franken.de
Wed Nov 11 01:22:13 CST 2015


Hi,

Patch looks good to me.

(doing it in the nested style of this if () if () if() nesting is probably
not needed)

Ciao, Marcus
On Tue, Nov 10, 2015 at 07:22:03PM +0100, Ralf Habacker wrote:
> 
> Bug: https://bugs.winehq.org/show_bug.cgi?id=39568
> 
> Signed-off-by: Ralf Habacker <ralf.habacker at freenet.de>

Signed-off-by: Marcus Meissner <marcus at jet.franken.de>
> ---
>  dlls/dbghelp/path.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> 

> diff --git a/dlls/dbghelp/path.c b/dlls/dbghelp/path.c
> index a0e51bd..8c74426 100644
> --- a/dlls/dbghelp/path.c
> +++ b/dlls/dbghelp/path.c
> @@ -490,7 +490,13 @@ static BOOL CALLBACK module_find_cb(PCWSTR buffer, PVOID user)
>                  if ((mapping = MapViewOfFile(hMap, FILE_MAP_READ, 0, 0, 0)) != NULL)
>                  {
>                      IMAGE_NT_HEADERS*   nth = RtlImageNtHeader(mapping);
> -
> +                    if (!nth)
> +                    {
> +                        UnmapViewOfFile(mapping);
> +                        CloseHandle(hMap);
> +                        CloseHandle(hFile);
> +                        return FALSE;
> +                    }
>                      matched++;
>                      timestamp = nth->FileHeader.TimeDateStamp;
>                      size = nth->OptionalHeader.SizeOfImage;
> 

> 




More information about the wine-patches mailing list