From b989d26e1182a3ee8cf62f3ee79dfb231fd66e23 Mon Sep 17 00:00:00 2001 From: HarpyWar <harpywar@gmail.com> Date: Mon, 16 Apr 2012 08:03:07 +0400 Subject: [PATCH] Added game id field in status.xml output Example: ... <Users> <Number>1</Number> <user><name>HarpyWar</name><clienttag>SEXP</clienttag><version>1.16.1.1</version></user> <gameid>32</gameid></user> </Users> <Games> <Number>1</Number> <game><id>32</id><name>test</name><clienttag>SEXP</clienttag></game> </Games> ... --- pvpgn/src/bnetd/output.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pvpgn/src/bnetd/output.cpp b/pvpgn/src/bnetd/output.cpp index 12a6768..b5d0c92 100644 --- a/pvpgn/src/bnetd/output.cpp +++ b/pvpgn/src/bnetd/output.cpp @@ -69,7 +69,7 @@ static int _glist_cb_xml(t_game *game, void *data) { char clienttag_str[5]; - std::fprintf((std::FILE*)data,"\t\t<game><name>%s</name><clienttag>%s</clienttag></game>\n",game_get_name(game),tag_uint_to_str(clienttag_str,game_get_clienttag(game))); + std::fprintf((std::FILE*)data,"\t\t<game><id>%u</id><name>%s</name><clienttag>%s</clienttag></game>\n",game_get_id(game),game_get_name(game),tag_uint_to_str(clienttag_str,game_get_clienttag(game))); return 0; } @@ -127,8 +127,12 @@ int output_standard_writer(std::FILE * fp) { conn = (t_connection*)elem_get_data(curr); if (conn_get_account(conn)) - std::fprintf(fp,"\t\t<user><name>%s</name><clienttag>%s</clienttag><version>%s</version></user>\n",conn_get_username(conn),tag_uint_to_str(clienttag_str,conn_get_clienttag(conn)),conn_get_clientver(conn)); - } + std::fprintf(fp,"\t\t<user><name>%s</name><clienttag>%s</clienttag><version>%s</version>",conn_get_username(conn),tag_uint_to_str(clienttag_str,conn_get_clienttag(conn)),conn_get_clientver(conn)); + + if ((game = conn_get_game(conn))) + std::fprintf(fp,"<gameid>%u</gameid>", game_get_id(game)); + fprintf(fp,"</user>\n"); + } std::fprintf(fp,"\t\t</Users>\n"); std::fprintf(fp,"\t\t<Games>\n");