MAINT-5042 FIXED SL Viewer Closes Unexpectedly in specific area with high RenderVolumeLODFactor

- fix for review
- fix in buffer overrun detector
ruslantproductengine 2015-04-27 18:21:39 +03:00
parent 348bfc7ea3
commit 75ffe90b0c
3 changed files with 8 additions and 9 deletions

View File

@ -2176,8 +2176,7 @@ void* ll_aligned_malloc_fallback( size_t size, int align )
SYSTEM_INFO sysinfo;
GetSystemInfo(&sysinfo);
unsigned int for_alloc = sysinfo.dwPageSize;
while(for_alloc < size) for_alloc += sysinfo.dwPageSize;
unsigned int for_alloc = (size/sysinfo.dwPageSize + !!(size%sysinfo.dwPageSize)) * sysinfo.dwPageSize;
void *p = VirtualAlloc(NULL, for_alloc+sysinfo.dwPageSize, MEM_COMMIT|MEM_RESERVE, PAGE_READWRITE);
if(NULL == p) {

View File

@ -97,7 +97,7 @@ template <typename T> T* LL_NEXT_ALIGNED_ADDRESS_64(T* address)
//------------------------------------------------------------------------------------------------
//------------------------------------------------------------------------------------------------
// for enable buffer overrun detection predefine LL_DEBUG_BUFFER_OVERRUN in current library
// change preprocessro code to: #if 1 && defined(LL_WINDOWS)
// change preprocessor code to: #if 1 && defined(LL_WINDOWS)
#if 0 && defined(LL_WINDOWS)
void* ll_aligned_malloc_fallback( size_t size, int align );

View File

@ -5584,7 +5584,7 @@ BOOL LLVolumeFace::createCap(LLVolume* volume, BOOL partial_build)
{
resizeVertices(num_vertices+1);
if (!partial_build)
//if (!partial_build)
{
resizeIndices(num_indices+3);
}
@ -5592,7 +5592,7 @@ BOOL LLVolumeFace::createCap(LLVolume* volume, BOOL partial_build)
else
{
resizeVertices(num_vertices);
if (!partial_build)
//if (!partial_build)
{
resizeIndices(num_indices);
}
@ -5714,10 +5714,10 @@ BOOL LLVolumeFace::createCap(LLVolume* volume, BOOL partial_build)
LL_CHECK_MEMORY
if (partial_build)
{
return TRUE;
}
//if (partial_build)
//{
// return TRUE;
//}
if (mTypeMask & HOLLOW_MASK)
{