From d08cf70c245f1ed6be16648cd692c454e8346f96 Mon Sep 17 00:00:00 2001 From: havoc Date: Mon, 14 Dec 2009 05:02:15 +0000 Subject: [PATCH] fix crash when r_framedatasize increases git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@9582 d7cf8633-e32d-0410-b094-e92efae38249 --- gl_rmain.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gl_rmain.c b/gl_rmain.c index 8ae40577..e9800542 100644 --- a/gl_rmain.c +++ b/gl_rmain.c @@ -3377,6 +3377,7 @@ void R_FrameData_Reset(void) r_framedata_base = NULL; r_framedata_size = 0; r_framedata_current = 0; + r_framedata_failed = false; } void R_FrameData_NewFrame(void) @@ -3386,11 +3387,12 @@ void R_FrameData_NewFrame(void) Cvar_SetValueQuick(&r_framedatasize, r_framedatasize.value * 1.25f); wantedsize = (size_t)(r_framedatasize.value * 1024*1024); wantedsize = bound(65536, wantedsize, 128*1024*1024); - if (r_framedata_size < wantedsize) + if (r_framedata_size != wantedsize) { r_framedata_size = wantedsize; - if (!r_framedata_base) - r_framedata_base = Mem_Alloc(r_main_mempool, r_framedata_size); + if (r_framedata_base); + Mem_Free(r_framedata_base); + r_framedata_base = Mem_Alloc(r_main_mempool, r_framedata_size); } r_framedata_current = 0; r_framedata_failed = false; -- 2.39.2