Commit graph

766 commits

Author SHA1 Message Date
Ben Payne ae94fc4e46 Fix mem leak discovered during previous commit 2015-01-26 16:52:07 -05:00
Ben Payne fcf52fb5e0 Rename the memory allocating versions to make prev error less likely
The behavior is different enough that these shouldn't be overloaded
with the non-allocating verions. Also makes it more obvious what is
going on to the caller.
2015-01-26 16:52:06 -05:00
Ben Payne d669eb6ee7 Fix unintentionally deleted param 2015-01-26 16:52:05 -05:00
Ben Payne 6e45643b28 Add descriptions 2015-01-26 16:52:04 -05:00
Ben Payne 4694b0a8ed Fix buffer size larger than necessary 2015-01-26 16:52:04 -05:00
Ben Payne 2cc4801974 Remove a dead function 2015-01-26 16:52:03 -05:00
Ben Payne 7613fa0375 Remove unnecessary null termination
UTF16Cache::copyToBuffer() is already adding a null terminator
2015-01-26 16:52:02 -05:00
Ben Payne e3bbc42925 Provide a safer version of convertUTF16toUTF8 2015-01-26 16:52:01 -05:00
Ben Payne a88339c219 Fix buffer overflows due to incorrect use of sizeof
A snippet of example code:

UTF16 pszFilter[1024];
...
convertUTF8toUTF16((UTF8 *)mData.mFilters, pszFilter, sizeof(pszFilter));

Since the conversion function is expecting the third parameter to be the
length in 16-bit characters, *not* bytes, this results in the function
writing outside the bounds of the output array.

To make this less likely to happen in the future (I hope), I've provided a
template function that infers the correct size of a static array, so it's
no longer necessary to pass the size in most cases. The sized function has
been renamed with an "N" suffix to hopefully encourage this use.

This bug was caught due to a warning from MSVC about stack corruption
occurring in codeBlock::exec(), after opening a file open dialog twice in
succession. After some hunting, I found that this was due to
FileDialog::Execute() passing incorrect buffer sizes to the conversion
function, which resulted in the function writing a null terminator into
some memory that happened to be in the stack frame of codeBlock::exec()!
2015-01-26 16:52:01 -05:00
LuisAntonRebollo 52d8aa3a97 Remove a get* OpenGL function causing CPU-GPU sync point (bad performance). 2015-01-26 01:56:13 +01:00
Luis Anton Rebollo 6492028bb2 Merge pull request #1035 from bpay/memfixes
Memfixes
2015-01-25 13:42:32 +01:00
Luis Anton Rebollo 79df1a1b3a Merge pull request #1089 from eightyeight/profile-stringtable
Add profiler regions for StringTable functions
2015-01-25 10:56:20 +01:00
Luis Anton Rebollo 94f5e6d9dc Merge pull request #1080 from eightyeight/netevent-reference-counting
Use a strong reference instead of more manual reference counting
2015-01-24 23:03:33 +01:00
Luis Anton Rebollo ea0e3fd683 Merge pull request #1096 from bpay/fix-include-guards
Fix include guards
2015-01-24 23:02:13 +01:00
Luis Anton Rebollo be84142502 Merge pull request #1118 from Lopuska/patch-17
fix #1117
2015-01-24 22:59:06 +01:00
Luis Anton Rebollo ca382f56a6 Merge pull request #1119 from Lopuska/patch-18
OpenGL fix - fixed a crash when you activate Alpha Threshold checkbox wi...
2015-01-24 22:58:47 +01:00
LuisAntonRebollo 4e9034854d Linux implementation. Include changes for gcc x64. 2015-01-24 22:08:26 +01:00
LuisAntonRebollo a7002c0ecc Changes for Linux. 2015-01-24 21:52:46 +01:00
Anis 4ccf89ba8e fix to avoid a missing sampler name declaration 2015-01-21 14:39:05 +01:00
Anis 5d392e373e Update shaderFeatureGLSL.cpp 2015-01-20 19:13:25 +01:00
Anis c9116dd4a4 OpenGL fix - fixed a crash when you activate Alpha Threshold checkbox without a diffuse map 2015-01-20 19:07:29 +01:00
Anis f05b1b5cbd fix #1117 2015-01-20 17:02:56 +01:00
LuisAntonRebollo 3336bffad2 Changes for Linux. 2015-01-19 01:44:36 +01:00
LuisAntonRebollo aa35157eef PlatformSDL implementation. 2015-01-19 01:17:37 +01:00
LuisAntonRebollo 21d58bb191 Modified files for SDL2. 2015-01-19 00:33:23 +01:00
Ben Payne b2b950c84a Add missing include guards to some headers 2015-01-06 00:42:33 -05:00
Ben Payne 3574ef838b Fix erroneous include guards 2015-01-06 00:42:09 -05:00
Daniel Buckmaster 33a0579735 Merge pull request #1093 from eightyeight/fix-setextent
Fix setExtent
2015-01-02 19:40:00 +11:00
Daniel Buckmaster f1da30f285 Those are ints, not floats. 2015-01-02 19:38:05 +11:00
Daniel Buckmaster 93b0179019 Merge pull request #1002 from Winterleaf/Fix-ScatterSky-Zindex
Z Offset for Scattersky to fix the rendering issue at high altitudes.
2015-01-02 13:04:24 +11:00
Daniel Buckmaster dd9e416b00 Regenerate flex/bison files. 2015-01-01 10:33:50 +11:00
Daniel Buckmaster 5a66f00697 Use a buffer on the stack. 2015-01-01 10:33:35 +11:00
Daniel Buckmaster 170a4ea08f Add anonymous functions before other statements. 2014-12-29 22:44:57 +11:00
Daniel Buckmaster 412247c401 Regenerate lex/bison files. 2014-12-29 21:50:11 +11:00
Daniel Buckmaster 1204b81a78 Added anomymous functions as in Konrad Kiss's resource. 2014-12-29 21:49:52 +11:00
Daniel Buckmaster 40b871e652 Add profiling to StringTable. 2014-12-29 20:20:00 +11:00
Daniel Buckmaster e9308e40ed Merge pull request #998 from rextimmy/physx3_cpu_dispatcher_fix
Fixed issue where physx3 cpu dispatcher was created multiple times
2014-12-29 14:14:05 +11:00
Daniel Buckmaster f85fc550c5 Merge pull request #1038 from stenyak/fix-cursor-show-bug
Fix off-by-one error in cursor hiding/showing function
2014-12-28 22:54:41 +11:00
Luis Anton Rebollo 39bd99a61a Merge pull request #1056 from Lopuska/patch-12
mipmap support on OpenGL cubemap
2014-12-27 03:18:16 +01:00
LuisAntonRebollo 6789270789 OpenGL: Mipmaps for GFXGLCubemap. Fix dynamic cubemaps. 2014-12-27 03:03:33 +01:00
Luis Anton Rebollo 9eb05b2bdc Merge pull request #1083 from BeamNG/opengl_intel_WIP
Fix/walkaround for OpenGL on Intel
2014-12-27 01:13:14 +01:00
LuisAntonRebollo c2c9cf4a2d OpenGL: Mipmaps for GFXGLCubemap. Fix compressed textures. 2014-12-27 00:01:21 +01:00
LuisAntonRebollo 2f8f89d486 OpenGL: Mipmaps for GFXGLCubemap. Fix mipmaps size. 2014-12-26 21:28:31 +01:00
LuisAntonRebollo 9150c7f5ab OpenGL: Mipmaps for GFXGLCubemap. 2014-12-26 21:03:54 +01:00
Daniel Buckmaster ae284a89ec Merge branch 'development' into defineconsolemethod
Conflicts:
	Engine/source/materials/materialDefinition.cpp
2014-12-26 13:22:16 +11:00
Daniel Buckmaster 7d376386d1 Merge pull request #1074 from Azaezel/AccuVolumes_2
Accumulation volumes
2014-12-26 13:18:00 +11:00
Daniel Buckmaster cd42424d61 Use a strong reference instead of more manual reference counting. 2014-12-26 11:41:19 +11:00
Daniel Buckmaster f9cd778b3b Fixed tricky overloaded sfx* functions. 2014-12-24 10:04:44 +11:00
Daniel Buckmaster c85ac03c16 Merge pull request #1020 from eightyeight/simdictionary-improvement
SimDictionary improvement
2014-12-24 09:54:54 +11:00
Daniel Buckmaster 859514a792 Guard against null pointers and remove unnecessary include. 2014-12-24 08:34:30 +11:00