diff options
Diffstat (limited to 'media-libs/sge/files/sge-030809-cmap.patch')
-rw-r--r-- | media-libs/sge/files/sge-030809-cmap.patch | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/media-libs/sge/files/sge-030809-cmap.patch b/media-libs/sge/files/sge-030809-cmap.patch new file mode 100644 index 000000000000..c03396e1fb8b --- /dev/null +++ b/media-libs/sge/files/sge-030809-cmap.patch @@ -0,0 +1,28 @@ +http://bugs.gentoo.org/33296#26 + +patch by Steve <steviedizzle@gmail.com> + +explanation: +It changes the 16bit integers for setting and clearing collision maps to 32bit +because if the surface is too large the program will segfault. + +--- sge030809/sge_collision.cpp ++++ sge030809/sge_collision.cpp +@@ -336,7 +336,7 @@ + void sge_unset_cdata(sge_cdata *cd, Sint16 x, Sint16 y, Sint16 w, Sint16 h) + { + Uint8 *map=cd->map; +- Sint16 offs,len; ++ Sint32 offs,len; + int i,n=0; + + offs=y*cd->w + x; +@@ -365,7 +365,7 @@ + void sge_set_cdata(sge_cdata *cd, Sint16 x, Sint16 y, Sint16 w, Sint16 h) + { + Uint8 *map=cd->map; +- Sint16 offs,len; ++ Sint32 offs,len; + int i,n=0; + + offs=y*cd->w + x; |