@@ -260,7 +260,7 @@ Server::~Server()
260
260
m_env->kickAllPlayers (SERVER_ACCESSDENIED_SHUTDOWN,
261
261
kick_msg, reconnect);
262
262
}
263
-
263
+
264
264
actionstream << " Server: Shutting down" << std::endl;
265
265
266
266
// Do this before stopping the server in case mapgen callbacks need to access
@@ -2897,38 +2897,44 @@ PlayerSAO *Server::getPlayerSAO(session_t peer_id)
2897
2897
std::wstring Server::getStatusString ()
2898
2898
{
2899
2899
std::wostringstream os (std::ios_base::binary);
2900
- os<< L" # Server: " ;
2900
+ os << L" # Server: " ;
2901
2901
// Version
2902
- os<< L" version=" << narrow_to_wide (g_version_string);
2902
+ os << L" version=" << narrow_to_wide (g_version_string);
2903
2903
// Uptime
2904
- os<< L" , uptime=" << m_uptime.get ();
2904
+ os << L" , uptime=" << m_uptime.get ();
2905
2905
// Max lag estimate
2906
- os<<L" , max_lag=" <<m_env->getMaxLagEstimate ();
2906
+ os << L" , max_lag=" << (m_env ? m_env->getMaxLagEstimate () : 0 );
2907
+
2907
2908
// Information about clients
2908
2909
bool first = true ;
2909
- os<<L" , clients={" ;
2910
- std::vector<session_t > clients = m_clients.getClientIDs ();
2911
- for (session_t client_id : clients) {
2912
- // Get player
2913
- RemotePlayer *player = m_env->getPlayer (client_id);
2914
- // Get name of player
2915
- std::wstring name = L" unknown" ;
2916
- if (player)
2917
- name = narrow_to_wide (player->getName ());
2918
- // Add name to information string
2919
- if (!first)
2920
- os << L" , " ;
2921
- else
2922
- first = false ;
2923
- os << name;
2910
+ os << L" , clients={" ;
2911
+ if (m_env) {
2912
+ std::vector<session_t > clients = m_clients.getClientIDs ();
2913
+ for (session_t client_id : clients) {
2914
+ RemotePlayer *player = m_env->getPlayer (client_id);
2915
+
2916
+ // Get name of player
2917
+ std::wstring name = L" unknown" ;
2918
+ if (player)
2919
+ name = narrow_to_wide (player->getName ());
2920
+
2921
+ // Add name to information string
2922
+ if (!first)
2923
+ os << L" , " ;
2924
+ else
2925
+ first = false ;
2926
+
2927
+ os << name;
2928
+ }
2924
2929
}
2925
2930
os << L" }" ;
2926
2931
2927
- if (!((ServerMap*)(&m_env->getMap ()))->isSavingEnabled ())
2928
- os<< std::endl<< L" # Server: " << " WARNING: Map saving is disabled." ;
2932
+ if (m_env && !((ServerMap*)(&m_env->getMap ()))->isSavingEnabled ())
2933
+ os << std::endl << L" # Server: " << " WARNING: Map saving is disabled." ;
2929
2934
2930
2935
if (!g_settings->get (" motd" ).empty ())
2931
- os<<std::endl<<L" # Server: " <<narrow_to_wide (g_settings->get (" motd" ));
2936
+ os << std::endl << L" # Server: " << narrow_to_wide (g_settings->get (" motd" ));
2937
+
2932
2938
return os.str ();
2933
2939
}
2934
2940
0 commit comments