Bläddra i källkod

Fixed bug 2868 - SDL_FillRect can crash if surface's clip-rect is out-of-bounds

Thanks to John Skaller for the research into this, and for the fix!
David Ludwig 10 år sedan
förälder
incheckning
d6c4296653
1 ändrade filer med 4 tillägg och 0 borttagningar
  1. 4 0
      src/video/SDL_fillrect.c

+ 4 - 0
src/video/SDL_fillrect.c

@@ -251,6 +251,10 @@ SDL_FillRect(SDL_Surface * dst, const SDL_Rect * rect, Uint32 color)
         rect = &clipped;
     } else {
         rect = &dst->clip_rect;
+        /* Don't attempt to fill if the surface's clip_rect is empty */
+        if (SDL_RectEmpty(rect)) {
+            return 0;
+        }
     }
 
     /* Perform software fill */