From 3327c5fd259be9c45aa95add199687d1e96f67f0 Mon Sep 17 00:00:00 2001 From: cppla <i@cpp.la> Date: Thu, 5 May 2022 10:15:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=A2=9E=E5=88=A0=E8=8A=82?= =?UTF-8?q?=E7=82=B9=E6=9C=88=E6=B5=81=E9=87=8F=E5=8C=B9=E9=85=8D=E7=9A=84?= =?UTF-8?q?=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- server/src/main.cpp | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/server/src/main.cpp b/server/src/main.cpp index cbd2052..22ebf1d 100644 --- a/server/src/main.cpp +++ b/server/src/main.cpp @@ -434,7 +434,7 @@ int CMain::ReadConfig() json_value *pNJsonData = json_parse_ex(&nJsonSettings, pNFileData, strlen(pNFileData), aError); if(pNJsonData) { - const json_value &rStart = (*pNJsonData)["servers"]; + const json_value &cStart = (*pNJsonData)["servers"]; if(rStart.type == json_array) { int ID = 0; @@ -442,14 +442,18 @@ int CMain::ReadConfig() { if(ID < 0 || ID >= NET_MAX_CLIENTS) continue; - - // check name and host for match , when ServerStatus reload month traffic. - if(strcmp(Client(ID)->m_aName, rStart[i]["name"].u.string.ptr)==0 && strcmp(Client(ID)->m_aHost, rStart[i]["host"].u.string.ptr)==0) + for(unsigned j = 0; j < cStart.u.array.length; j++) { - Client(ID)->m_LastNetworkIN = rStart[i]["last_network_in"].u.integer; - Client(ID)->m_LastNetworkOUT = rStart[i]["last_network_out"].u.integer; + if(strcmp(Client(ID)->m_aName, cStart[j]["name"].u.string.ptr)==0 && + strcmp(Client(ID)->m_aType, cStart[j]["type"].u.string.ptr)==0 && + strcmp(Client(ID)->m_aHost, cStart[j]["host"].u.string.ptr)==0 && + strcmp(Client(ID)->m_aLocation, cStart[j]["location"].u.string.ptr)==0) + { + Client(ID)->m_LastNetworkIN = cStart[j]["last_network_in"].u.integer; + Client(ID)->m_LastNetworkOUT = cStart[j]["last_network_out"].u.integer; + break; + } } - ID++; } }