[nexuiz-commits] r8332 - trunk/data/qcsrc/server
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sun Nov 29 08:40:59 EST 2009
Author: div0
Date: 2009-11-29 08:40:59 -0500 (Sun, 29 Nov 2009)
New Revision: 8332
Modified:
trunk/data/qcsrc/server/campaign.qc
trunk/data/qcsrc/server/g_world.qc
trunk/data/qcsrc/server/miscfunctions.qc
Log:
new cvar checking: bail out if an undefined cvar is used
Modified: trunk/data/qcsrc/server/campaign.qc
===================================================================
--- trunk/data/qcsrc/server/campaign.qc 2009-11-29 13:23:15 UTC (rev 8331)
+++ trunk/data/qcsrc/server/campaign.qc 2009-11-29 13:40:59 UTC (rev 8332)
@@ -11,9 +11,9 @@
float CampaignBailout(string s)
{
- cvar = cvar_builtin;
- cvar_string = cvar_string_builtin;
- cvar_set = cvar_set_builtin;
+ cvar = cvar_normal;
+ cvar_string = cvar_string_normal;
+ cvar_set = cvar_set_normal;
cvar_set("g_campaign", "0");
print("campaign initialization failed: ", s, "\n");
return 1;
@@ -101,7 +101,7 @@
// copy sv_gravity cvar, as the engine needs it too (sorry, this will mess
// with the menu a little still...)
- cvar_set_builtin("sv_gravity", cvar_string("sv_gravity"));
+ cvar_set_normal("sv_gravity", cvar_string("sv_gravity"));
if(Campaign_Invalid())
return;
@@ -120,8 +120,8 @@
return;
cvar_set("fraglimit", ftos(campaign_fraglimit[0]));
cvar_set("timelimit", "0");
- cvar_set_builtin("fraglimit", ftos(campaign_fraglimit[0]));
- cvar_set_builtin("timelimit", "0");
+ cvar_set_normal("fraglimit", ftos(campaign_fraglimit[0]));
+ cvar_set_normal("timelimit", "0");
}
void CampaignSaveCvar(string cvarname, float value)
@@ -132,7 +132,7 @@
string l;
registercvar(cvarname, ftos(value));
- cvar_set_builtin(cvarname, ftos(value));
+ cvar_set_normal(cvarname, ftos(value));
// note: cvarname must be remembered
fh = fopen("campaign.cfg", FILE_READ);
@@ -209,7 +209,7 @@
// advance level (for menu to show it right)
CampaignSaveCvar(campaign_index_var, campaign_level + 1);
}
- else if(campaign_level == cvar_builtin(campaign_index_var))
+ else if(campaign_level == cvar_normal(campaign_index_var))
{
// advance level
CampaignSaveCvar(campaign_index_var, campaign_level + 1);
Modified: trunk/data/qcsrc/server/g_world.qc
===================================================================
--- trunk/data/qcsrc/server/g_world.qc 2009-11-29 13:23:15 UTC (rev 8331)
+++ trunk/data/qcsrc/server/g_world.qc 2009-11-29 13:40:59 UTC (rev 8332)
@@ -350,9 +350,9 @@
// handler for _init/_init map (only for dedicated server initialization)
world_initialized = -1; // don't complain
- cvar = cvar_builtin;
- cvar_string = cvar_string_builtin;
- cvar_set = cvar_set_builtin;
+ cvar = cvar_normal;
+ cvar_string = cvar_string_normal;
+ cvar_set = cvar_set_normal;
dprint_load(); // load dprint status from cvar
remove = remove_unsafely;
@@ -383,9 +383,9 @@
float fd, l, i, j, n;
string s, col;
- cvar = cvar_builtin;
- cvar_string = cvar_string_builtin;
- cvar_set = cvar_set_builtin;
+ cvar = cvar_normal;
+ cvar_string = cvar_string_normal;
+ cvar_set = cvar_set_normal;
dprint_load(); // load dprint status from cvar
if(world_already_spawned)
Modified: trunk/data/qcsrc/server/miscfunctions.qc
===================================================================
--- trunk/data/qcsrc/server/miscfunctions.qc 2009-11-29 13:23:15 UTC (rev 8331)
+++ trunk/data/qcsrc/server/miscfunctions.qc 2009-11-29 13:40:59 UTC (rev 8332)
@@ -2758,3 +2758,24 @@
else
return 1;
}
+
+
+
+
+#ifdef RELEASE
+#define cvar_string_normal cvar_string_builtin
+#define cvar_normal cvar_builtin
+#else
+string cvar_string_normal(string n)
+{
+ if not(cvar_type(n) & 1)
+ error(strcat("Attempt to access undefined cvar: ", n));
+ return cvar_string_builtin(n);
+}
+
+float cvar_normal(string n)
+{
+ return stof(cvar_string_normal(n));
+}
+#endif
+#define cvar_set_normal cvar_set_builtin
More information about the nexuiz-commits
mailing list