diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-03-23 17:32:07 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-03-23 17:32:07 +0000 |
| commit | 6adb3d44544f0c740b63b07d2f9cfb9a1a83814a (patch) | |
| tree | 83b0f84f0bfe9fc67846a086cff9a199115cab7f /render | |
| parent | 39946832001bd205f764a36fbdae17bc53d1fb35 (diff) | |
add more size checks
Diffstat (limited to 'render')
| -rw-r--r-- | render/render.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/render/render.c b/render/render.c index 7129974c..397cebfa 100644 --- a/render/render.c +++ b/render/render.c @@ -92,7 +92,7 @@ void x_paint(Window win, Appearance *l, int x, int y, int w, int h) XImage *im = NULL; Pixmap oldp; - if (w <= 0 || h <= 0) return; + if (w <= 0 || h <= 0 || x+w <= 0 || y+h <= 0) return; g_assert(l->surface.type == Surface_Planar); @@ -106,8 +106,7 @@ void x_paint(Window win, Appearance *l, int x, int y, int w, int h) render_colormap); g_assert(l->xftdraw != NULL); - if (l->surface.data.planar.pixel_data != NULL) - g_free(l->surface.data.planar.pixel_data); + g_free(l->surface.data.planar.pixel_data); l->surface.data.planar.pixel_data = g_new(pixel32, w * h); if (l->surface.data.planar.grad == Background_Solid) |
