Commit graph

5 commits

Author SHA1 Message Date
Ricardo Barreira
5e308f9056
Fix undefined behavior in FreeStackWinding
Fix subtraction of unrelated pointers and integer overflow in FreeStackWinding (both are undefined behavior).

In rare cases "i" would non-deterministically be between 0 and 2 even though the
pointers were in unrelated addresses, which caused a spurious free of one of
the three windings - eventually the real free would happen, be detected as a
double free and an exit(1) would ensue.

Example contents of w and stack->windings that triggered this in a test: 0xa9251c0 0x7f440a924f78

Checking for pointer equality makes the behavior defined and correct: http://port70.net/~nsz/c/c99/n1256.html#6.5.9
2017-10-31 13:05:32 +00:00
Timothee TTimo Besset
830125fad0 uncrustify! now the code is only ugly on the *inside* 2012-03-17 15:01:54 -05:00
Forest Hale
88cea027e6 ported over the 1.5 branch version of q3map2 which is newer
made Visual Studio files work in VS2005 Express
fixed a ton of warnings in VS2005 Express
fixed some compile problems on OpenSUSE 11.0


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@302 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-07-25 07:31:37 +00:00
TTimo
9998050654 set eol-style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@183 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:34:51 +00:00
TTimo
8037810110 transfer from internal tree r5311 branches/1.4-gpl
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@177 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-09-12 18:54:28 +00:00