# HG changeset patch # User displacer # Date 1187273406 0 # Node ID a6cea9fbbc597ee8cb839a29312d71cd6895ff48 # Parent f674e8e5bf28e0e2451fbeaa5f981540ccd42a41 hedgehogs num bug fixed diff -r f674e8e5bf28 -r a6cea9fbbc59 QTfrontend/netconnectedclient.cpp --- a/QTfrontend/netconnectedclient.cpp Thu Aug 16 12:42:22 2007 +0000 +++ b/QTfrontend/netconnectedclient.cpp Thu Aug 16 14:10:06 2007 +0000 @@ -110,11 +110,14 @@ } if(lst[0]=="HHNUM") { - if(!m_hwserver->isChiefClient(this) || lst.size()<4) + if (lst.size()<4) { + qWarning((QString("Net: Bad 'HHNUM' message: ")+msg+" size="+QString("%1").arg(lst.size())).toAscii().data()); + return; + } + if(!m_hwserver->isChiefClient(this)) { - qWarning((QString("Net: Bad 'HHNUM' message: ")+msg).toAscii().data()); - return; // error or permission denied :) - } + return; // permission denied + } const QString confstr=lst[0]+"+"+lst[1]+"+"+lst[2]; QMap::iterator it=m_hwserver->m_gameCfg.find(confstr); int oldTeamHHNum = it==m_hwserver->m_gameCfg.end() ? 0 : it.value()[0].toUInt(); @@ -122,15 +125,19 @@ m_hwserver->hhnum+=newTeamHHNum-oldTeamHHNum; // create CONFIG_PARAM to save HHNUM at server from lst lst=QStringList("CONFIG_PARAM") << confstr << lst[3]; + m_hwserver->sendOthers(this, lst.join(QString(delimeter))); } if(lst[0]=="CONFIG_PARAM") { - if(!m_hwserver->isChiefClient(this) || lst.size()<3) - { + if (lst.size()<3) { qWarning((QString("Net: Bad 'CONFIG_PARAM' message: ")+msg).toAscii().data()); - //qWarning("Net: Bad 'CONFIG_PARAM' message"); - return; // error or permission denied :) - } + return; + } + + if(!m_hwserver->isChiefClient(this)) + { + return; // permission denied + } else m_hwserver->m_gameCfg[lst[1]]=lst.mid(2); }