diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2007-08-01 14:30:03 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2007-08-06 14:22:49 -0700 |
commit | 74feba4d77d74979a0ea478d666439ffc55001e5 (patch) | |
tree | af3fd8b53b4703966e8acea1a8a0f81cfb159490 /fb/fbtrap.c | |
parent | f6aa2200f2fb4f4d4bb51e67d68e86aabcac0c4b (diff) |
Don't unwrap too early in libwfb for Composite.
Don't call fbFinishWrap until the pixman_image_t that stores the pointer is
actually freed. This prevents corruption or crashes caused by accessing a
wrapped pointer after the wrapping is torn down.
Diffstat (limited to 'fb/fbtrap.c')
-rw-r--r-- | fb/fbtrap.c | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/fb/fbtrap.c b/fb/fbtrap.c index e70336cce..830603ae7 100644 --- a/fb/fbtrap.c +++ b/fb/fbtrap.c @@ -47,9 +47,7 @@ fbAddTraps (PicturePtr pPicture, pixman_add_traps (image, x_off, y_off, ntrap, (pixman_trap_t *)traps); - fbFinishAccess (pPicture->pDrawable); - - pixman_image_unref (image); + free_pixman_pict (pPicture, image); } void @@ -65,9 +63,7 @@ fbRasterizeTrapezoid (PicturePtr pPicture, pixman_rasterize_trapezoid (image, (pixman_trapezoid_t *)trap, x_off, y_off); - fbFinishAccess (pPicture->pDrawable); - - pixman_image_unref (image); + free_pixman_pict (pPicture, image); } static int |