luis lenders <lgvlenders(a)yahoo.co.uk> writes:
> Index: wine/dlls/msvideo/drawdib.c
> ===================================================================
> RCS file: /home/wine/wine/dlls/msvideo/drawdib.c,v
> retrieving revision 1.24
> diff -u -p -r1.24 drawdib.c
> --- wine/dlls/msvideo/drawdib.c 17 Jan 2005 15:33:43 -0000 1.24
> +++ wine/dlls/msvideo/drawdib.c 24 May 2005 19:09:28 -0000
> @@ -242,7 +242,10 @@ BOOL VFWAPI DrawDibBegin(HDRAWDIB hdd,
> TRACE("Not compressed!\n");
> dwSize = lpbi->biSize + num_colours(lpbi)*sizeof(RGBQUAD);
> whdd->lpbiOut = HeapAlloc(GetProcessHeap(), 0, dwSize);
> - memcpy(whdd->lpbiOut, lpbi, dwSize);
> + if (whdd->lpbiOut)
> + memcpy(whdd->lpbiOut, lpbi, dwSize);
> + else
> + ret=FALSE;
Sounds like we need a check that the number of colors is
reasonable. The HeapAlloc shouldn't normally fail except if the
size is bogus.
--
Alexandre Julliard
julliard(a)winehq.org