[Spice-devel] [PATCH] qxl:fix double free surface when create device bitmap failed
Alon Levy
alevy at redhat.com
Thu Dec 9 00:15:17 PST 2010
On Thu, Dec 09, 2010 at 09:07:23AM +0800, Coolper Chen wrote:
> DrvCreateDeviceBitmap will call FreeSurface function when
> CreateDeviceBitmap failed, no need call FreeSurface function in
> CreateDeviceBitmap function;
> It fixes the windows XP bluescreen problem that I encounter.
>
> diff --git a/display/surface.c b/display/surface.c
> index 7146b32..38200aa 100644
> --- a/display/surface.c
> +++ b/display/surface.c
> @@ -152,7 +152,6 @@ HBITMAP CreateDeviceBitmap(PDev *pdev, SIZEL size,
> ULONG format, QXLPHYSICAL *ph
> out_error3:
> QXLDelSurface(pdev, *base_mem, allocation_type);
> out_error2:
> - FreeSurface(pdev, surface_id);
> EngDeleteSurface((HSURF)surf);
> out_error1:
> return 0;
>
Just to be clear, I realize it fixes your bsod, but It seems perhaps that
the free is being done elsewhere - maybe EngAssociateSurface if it fails
frees the surface?
> /Coolper Chen
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list