shithub: choc

Download patch

ref: bf215f516ed4742fd19b920d8a5d3f6738375168
parent: 496bd0cfca29fdcb7b6de72fac85d6d6fa62e2af
author: James Haley <[email protected]>
date: Sat Sep 18 03:54:00 EDT 2010

Upped warning level and started fixing warnings - can't believe some
genius had them completely disabled... Also, a bug fix to
EV_ClearForceFields so that it continues running on all tagged sectors
even if sec->linecount is 0, and so that it returns a value. Made
dialogtext and M_WriteText's 3rd parameter const for safety.

Subversion-branch: /branches/strife-branch
Subversion-revision: 2108

--- a/msvc/strife.vcproj
+++ b/msvc/strife.vcproj
@@ -51,7 +51,7 @@
 				UsePrecompiledHeader="0"
 				ExpandAttributedSource="true"
 				AssemblerOutput="2"
-				WarningLevel="0"
+				WarningLevel="2"
 				DebugInformationFormat="4"
 				CompileAs="1"
 			/>
--- a/src/strife/m_menu.c
+++ b/src/strife/m_menu.c
@@ -1333,15 +1333,15 @@
 //
 int
 M_WriteText
-( int		x,
-  int		y,
-  char*		string)
+( int           x,
+  int           y,
+  const char*   string) // haleyjd: made const for safety w/dialog engine
 {
-    int		w;
-    char*	ch;
-    int		c;
-    int		cx;
-    int		cy;
+    int	        w;
+    const char* ch;
+    int         c;
+    int         cx;
+    int         cy;
 
     ch = string;
     cx = x;
--- a/src/strife/m_menu.h
+++ b/src/strife/m_menu.h
@@ -94,7 +94,7 @@
 void M_StartControlPanel (void);
 
 // haleyjd 09/04/10: Externalized. Draws menu text.
-int M_WriteText(int x, int y, char *string);
+int M_WriteText(int x, int y, const char *string);
 
 // haleyjd 09/04/10: [STRIFE] New function.
 void M_DialogDimMsg(int x, int y, char *str, boolean useyfont);
--- a/src/strife/p_dialog.c
+++ b/src/strife/p_dialog.c
@@ -379,7 +379,7 @@
 static char *dialogname;
 
 // Current dialog text.
-static char *dialogtext;
+static const char *dialogtext;
 
 //=============================================================================
 //
--- a/src/strife/p_doors.c
+++ b/src/strife/p_doors.c
@@ -498,7 +498,7 @@
 //
 // villsa [STRIFE] new function
 //
-int EV_ClearForceFields(line_t* line)
+boolean EV_ClearForceFields(line_t* line)
 {
     int         secnum;
     int         rtn;
@@ -505,6 +505,7 @@
     sector_t*   sec;
     int         i;
     line_t*     secline;
+    boolean     ret = false;
 
     secnum = -1;
     rtn = 0;
@@ -515,10 +516,9 @@
         rtn = 1;
 
         line->special = 0;
+        ret = true;
 
-        if(!sec->linecount)
-            return;
-
+        // haleyjd 09/18/10: fixed to continue w/linecount == 0, not return
         for(i = 0; i < sec->linecount; i++)
         {
             secline = sec->lines[i];
@@ -533,6 +533,8 @@
             sides[secline->sidenum[1]].midtexture = 0;
         }
     }
+
+    return ret;
 }
 
 
--- a/src/strife/p_spec.h
+++ b/src/strife/p_spec.h
@@ -131,8 +131,8 @@
 //
 // SPECIAL
 //
-int EV_DoDonut(line_t* line);
-int EV_ClearForceFields(line_t* line);  // villsa [STRIFE]
+int     EV_DoDonut(line_t* line);
+boolean EV_ClearForceFields(line_t* line);  // villsa [STRIFE]
 
 
 //