more miscellaneous fixes from graphitemaster
authoreihrul <eihrul@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 9 Dec 2014 23:08:33 +0000 (23:08 +0000)
committereihrul <eihrul@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 9 Dec 2014 23:08:33 +0000 (23:08 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@12109 d7cf8633-e32d-0410-b094-e92efae38249

cl_parse.c
cl_video.c
common.c
gl_rsurf.c

index 460ef27..2828515 100644 (file)
@@ -276,7 +276,7 @@ static void CL_ParseStartSoundPacket(int largesoundindex)
 
        MSG_ReadVector(&cl_message, pos, cls.protocol);
 
-       if (sound_num >= MAX_SOUNDS)
+       if (sound_num < 0 || sound_num >= MAX_SOUNDS)
        {
                Con_Printf("CL_ParseStartSoundPacket: sound_num (%i) >= MAX_SOUNDS (%i)\n", sound_num, MAX_SOUNDS);
                return;
@@ -2305,6 +2305,13 @@ static void CL_ParseStaticSound (int large)
                sound_num = (unsigned short) MSG_ReadShort(&cl_message);
        else
                sound_num = MSG_ReadByte(&cl_message);
+
+       if (sound_num < 0 || sound_num >= MAX_SOUNDS)
+       {
+               Con_Printf("CL_ParseStaticSound: sound_num(%i) >= MAX_SOUNDS (%i)\n", sound_num, MAX_SOUNDS);
+               return;
+       }
+
        vol = MSG_ReadByte(&cl_message);
        atten = MSG_ReadByte(&cl_message);
 
index f23dc92..db2302d 100644 (file)
@@ -568,7 +568,9 @@ void CL_DrawVideo(void)
 #ifndef USE_GLES2
        // disable video-only stipple
        if (qglPolygonStipple && !scr_stipple.integer && cl_video_stipple.integer)
+       {
                qglDisable(GL_POLYGON_STIPPLE);CHECKGLERROR
+       }
 #endif
 
        // VorteX: draw subtitle_text
index b36dae5..667f99c 100644 (file)
--- a/common.c
+++ b/common.c
@@ -1620,7 +1620,7 @@ void COM_Init_Commands (void)
                {
                        // arg contains whitespace, store quotes around it
                        com_cmdline[n++] = '\"';
-                       while ((n < ((int)sizeof(com_cmdline) - 1)) && com_argv[j][i])
+                       while ((n < ((int)sizeof(com_cmdline) - 2)) && com_argv[j][i])
                                com_cmdline[n++] = com_argv[j][i++];
                        com_cmdline[n++] = '\"';
                }
index 38a9289..d589cfc 100644 (file)
@@ -775,13 +775,13 @@ static void R_Q1BSP_RecursiveGetLightInfo_BSP(r_q1bsp_getlightinfo_t *info, qboo
                                        // recurse front side first because the svbsp building prefers it
                                        if (info->relativelightorigin[plane->type] >= plane->dist)
                                        {
-                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK)
+                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK-1)
                                                        nodestack[nodestackpos++] = node->children[0];
                                                nodestack[nodestackpos++] = node->children[1];
                                        }
                                        else
                                        {
-                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK)
+                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK-1)
                                                        nodestack[nodestackpos++] = node->children[1];
                                                nodestack[nodestackpos++] = node->children[0];
                                        }
@@ -805,13 +805,13 @@ static void R_Q1BSP_RecursiveGetLightInfo_BSP(r_q1bsp_getlightinfo_t *info, qboo
                                        // recurse front side first because the svbsp building prefers it
                                        if (PlaneDist(info->relativelightorigin, plane) >= 0)
                                        {
-                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK)
+                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK-1)
                                                        nodestack[nodestackpos++] = node->children[0];
                                                nodestack[nodestackpos++] = node->children[1];
                                        }
                                        else
                                        {
-                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK)
+                                               if (nodestackpos < GETLIGHTINFO_MAXNODESTACK-1)
                                                        nodestack[nodestackpos++] = node->children[1];
                                                nodestack[nodestackpos++] = node->children[0];
                                        }
@@ -1084,7 +1084,7 @@ static void R_Q1BSP_RecursiveGetLightInfo_BIH(r_q1bsp_getlightinfo_t *info, cons
 #endif
                        if (info->lightmins[axis] <= node->backmax)
                        {
-                               if (info->lightmaxs[axis] >= node->frontmin && nodestackpos < GETLIGHTINFO_MAXNODESTACK)
+                               if (info->lightmaxs[axis] >= node->frontmin && nodestackpos < GETLIGHTINFO_MAXNODESTACK-1)
                                        nodestack[nodestackpos++] = node->front;
                                nodestack[nodestackpos++] = node->back;
                                continue;