Fix bug 11736: Minor glslang compilation fixes: Correct "currentChar" logic for recently switched to unsigned size_t locations, and protect more pool guard code with #ifdef.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@25512 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich 2014-02-24 21:36:08 +00:00
parent b35e9bfa21
commit 8922ce7353
3 changed files with 10 additions and 4 deletions

View File

@ -9,5 +9,5 @@
// source have to figure out how to create revision.h just to get a build
// going. However, if it is not updated, it can be a version behind.
#define GLSLANG_REVISION "25411"
#define GLSLANG_DATE "2014/02/18 19:47:20"
#define GLSLANG_REVISION "25511"
#define GLSLANG_DATE "2014/02/24 14:16:19"

View File

@ -185,6 +185,7 @@ const unsigned char TAllocation::userDataFill = 0xcd;
//
void TAllocation::checkGuardBlock(unsigned char* blockMem, unsigned char val, const char* locText) const
{
#ifdef GUARD_BLOCKS
for (int x = 0; x < guardBlockSize; x++) {
if (blockMem[x] != val) {
const int maxSize = 80;
@ -196,6 +197,9 @@ void TAllocation::checkGuardBlock(unsigned char* blockMem, unsigned char val, co
assert(0 && "PoolAlloc: Damage in guard block");
}
}
#else
assert(guardBlockSize == 0);
#endif
}

View File

@ -93,9 +93,11 @@ public:
do {
--currentSource;
} while (currentSource > 0 && lengths[currentSource] == 0);
currentChar = lengths[currentSource] - 1;
if (currentChar < 0)
if (lengths[currentSource] == 0) {
// set to 0 if we've backed up to the start of an empty string
currentChar = 0;
} else
currentChar = lengths[currentSource] - 1;
}
if (peek() == '\n')
--loc[currentSource].line;