Follow-up Comment #20, bug #17573 (project wesnoth):

Richard, my condolences on your loss.

Thanks for the extensive, clear and correct comments on my code.  I've looked
through your patch as well.

___GLIBC__ is the correct preprocessor define to use to identify the glibc
library.

I think that although I posted the elaborate runtime check for the effects of
the SDL bug, it won't be reliable or easy to test given the complicated nature
of the bug.  Checking the libaries at runtime is the simplest way to catch all
problems.

In my last patch I moved the patch into the sdl_utils.cpp for the following
reasons.  The bug is an sdl bug and if the fix is in the sdl file its
maintainer can remove it when it is no longer relevant.  There is already a
wrapper for SDL_BlitSurface called sdl_blit, which is a good place to apply
the patch.  sdl_blit is used elsewhere other than in display.cpp, so fixing
the problem in sdl_utils may fortuitously catch other more subtle bugs in
smaller surfaces than the whole display.

If you grab my code from SDL_BlitSurfacePatch.5.patch for the sdl_blit, note
that as well as checking for src and dst being the same surface it also checks
for a non-existant source, as there is code elswhere passing null mouse
pointer surfaces to sdl_blit.

    _______________________________________________________

Reply to this item at:

  <http://gna.org/bugs/?17573>

_______________________________________________
  Message sent via/by Gna!
  http://gna.org/


_______________________________________________
Wesnoth-bugs mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-bugs

Reply via email to