Update of /cvsroot/once/oncecode/src/server/console
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13708
Modified Files:
ocsrvcmd.cpp
Log Message:
Fixed a 32/64-bit pointer problem in RegisterServerCmd
Index: ocsrvcmd.cpp
===================================================================
RCS file: /cvsroot/once/oncecode/src/server/console/ocsrvcmd.cpp,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** ocsrvcmd.cpp 26 Dec 2005 11:48:35 -0000 1.29
--- ocsrvcmd.cpp 4 Mar 2006 07:53:32 -0000 1.30
***************
*** 259,305 ****
{
ocCommand* cmd;
// admin commands
cmd = new ocCommand(ocPermLevel::ADMIN, "quit", "Stops the server",
! PerfSrvQuit, 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "load_area", "Load an area",
! PerfSrvLoadArea, "name", 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "load_entities", "Load the entities",
! PerfSrvLoadEntities, 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "reload_content", "Reload the client content",
! PerfSrvReloadContent, 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "change_time", "Changes time by the given minutes",
! PerfSrvChangeTime, "minutes", 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "kick_entity", "Kick the entity",
! PerfSrvKickEntity, "id", 0);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "msg", "Send a chat message",
! PerfSrvMsg, 0);
cmd->SetVariableArgs();
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "pm", "Send a private chat message",
! PerfSrvPMsg, "player", 0);
cmd->SetVariableArgs();
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "who", "Show the current players",
! PerfSrvWho, 0);
cmd_set->AddCommand(cmd);
// player commands
cmd = new ocCommand(ocPermLevel::PLAYER, "rescue", "To rescue a stuck player",
! PerfSrvRescue, "player", 0);
cmd_set->AddCommand(cmd);
--- 259,307 ----
{
ocCommand* cmd;
+ // Be sure to terminate a command list with 0L to avoid 32/64-bit
+ // pointer problems with va_arg
// admin commands
cmd = new ocCommand(ocPermLevel::ADMIN, "quit", "Stops the server",
! PerfSrvQuit, 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "load_area", "Load an area",
! PerfSrvLoadArea, "name", 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "load_entities", "Load the entities",
! PerfSrvLoadEntities, 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "reload_content", "Reload the client content",
! PerfSrvReloadContent, 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "change_time", "Changes time by the given minutes",
! PerfSrvChangeTime, "minutes", 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "kick_entity", "Kick the entity",
! PerfSrvKickEntity, "id", 0L);
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "msg", "Send a chat message",
! PerfSrvMsg, 0L);
cmd->SetVariableArgs();
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "pm", "Send a private chat message",
! PerfSrvPMsg, "player", 0L);
cmd->SetVariableArgs();
cmd_set->AddCommand(cmd);
cmd = new ocCommand(ocPermLevel::ADMIN, "who", "Show the current players",
! PerfSrvWho, 0L);
cmd_set->AddCommand(cmd);
// player commands
cmd = new ocCommand(ocPermLevel::PLAYER, "rescue", "To rescue a stuck player",
! PerfSrvRescue, "player", 0L);
cmd_set->AddCommand(cmd);
|