Author: soliton
Date: Sat Mar 22 05:55:46 2008
New Revision: 24959
URL: http://svn.gna.org/viewcvs/wesnoth?rev=24959&view=rev
Log:
* also exit explicitely on SIGTERM
* correct a couple more server messages
Modified:
trunk/src/server/game.cpp
trunk/src/server/server.cpp
Modified: trunk/src/server/game.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/server/game.cpp?rev=24959&r1=24958&r2=24959&view=diff
==============================================================================
--- trunk/src/server/game.cpp (original)
+++ trunk/src/server/game.cpp Sat Mar 22 05:55:46 2008
@@ -959,7 +959,7 @@
<< (disconnect ? " and disconnected" : "")
<< ". (socket: " << user->first << ")\n";
if (game_ended) {
- send_server_message((user->second.name() + " ended the
game.").c_str(), player);
+ send_server_message_to_all((user->second.name() + " ended the
game.").c_str(), player);
return true;
}
// Don't mark_available() since the player got already removed from the
@@ -1030,7 +1030,7 @@
//! A member asks for the next scenario to advance to.
void game::load_next_scenario(const player_map::const_iterator user) const {
- send_server_message((user->second.name() + " advances to the next
scenario").c_str(), user->first);
+ send_server_message_to_all((user->second.name() + " advances to the
next scenario").c_str(), user->first);
simple_wml::document cfg_scenario;
level_.root().copy_into(cfg_scenario.root().add_child("next_scenario"));
simple_wml::string_span data = cfg_scenario.output_compressed();
@@ -1242,7 +1242,6 @@
}
if(sock) {
- simple_wml::string_span str = doc.output_compressed();
- network::send_raw_data(str.begin(), str.size(), sock);
- }
-}
+ send_to_one(doc, sock);
+ }
+}
Modified: trunk/src/server/server.cpp
URL:
http://svn.gna.org/viewcvs/wesnoth/trunk/src/server/server.cpp?rev=24959&r1=24958&r2=24959&view=diff
==============================================================================
--- trunk/src/server/server.cpp (original)
+++ trunk/src/server/server.cpp Sat Mar 22 05:55:46 2008
@@ -98,6 +98,12 @@
void exit_sigint(int signal) {
assert(signal == SIGINT);
LOG_SERVER << "SIGINT caught, exiting without cleanup immediately.\n";
+ exit(1);
+}
+
+void exit_sigterm(int signal) {
+ assert(signal == SIGTERM);
+ LOG_SERVER << "SIGTERM caught, exiting without cleanup immediately.\n";
exit(1);
}
@@ -303,6 +309,7 @@
load_config();
signal(SIGHUP, reload_config);
signal(SIGINT, exit_sigint);
+ signal(SIGTERM, exit_sigterm);
}
void server::send_error(network::connection sock, const char* msg) const
@@ -778,7 +785,7 @@
for (std::vector<game*>::const_iterator g = games_.begin(); g !=
games_.end(); ++g) {
// Note: This string is parsed by the client to identify lobby
join messages!
- (*g)->send_server_message((username + " has logged into the
lobby").c_str());
+ (*g)->send_server_message_to_all((username + " has logged into
the lobby").c_str());
}
}
_______________________________________________
Wesnoth-commits mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-commits