QTfrontend/newnetclient.cpp
changeset 4917 8ff92bdc9f98
parent 4908 99d6797b7ff4
child 4958 84afe376a3b3
equal deleted inserted replaced
4916:33c1e9bc68ad 4917:8ff92bdc9f98
   310             tmp.removeFirst();
   310             tmp.removeFirst();
   311         }
   311         }
   312         return;
   312         return;
   313     }
   313     }
   314 
   314 
   315     if (lst[0] == "READY") {
   315     if (lst[0] == "CLIENT_FLAGS")
   316         if(lst.size() < 2)
   316     {
   317         {
   317         if(lst.size() < 3 || lst[1].size() < 2)
   318             qWarning("Net: Malformed READY message");
   318         {
   319             return;
   319             qWarning("Net: Malformed CLIENT_FLAGS message");
   320         }
   320             return;
   321         for(int i = 1; i < lst.size(); ++i)
   321         }
   322         {
   322 
   323             if (lst[i] == mynick)
   323         QString flags = lst[1];
   324                 emit setMyReadyStatus(true);
   324         bool setFlag = flags[0] == '+';
   325             emit setReadyStatus(lst[i], true);
   325 
   326         }
   326         while(flags.size() > 1)
   327         return;
   327         {
   328     }
   328             flags.remove(0, 1);
   329 
   329             char c = flags[0].toAscii();
   330     if (lst[0] == "NOT_READY") {
   330 
   331         if(lst.size() < 2)
   331             switch(c)
   332         {
   332             {
   333             qWarning("Net: Malformed NOT_READY message");
   333             case 'r':
   334             return;
   334                 {
   335         }
   335                     for(int i = 2; i < lst.size(); ++i)
   336         for(int i = 1; i < lst.size(); ++i)
   336                     {
   337         {
   337                         if (lst[i] == mynick)
   338             if (lst[i] == mynick)
   338                             emit setMyReadyStatus(setFlag);
   339                 emit setMyReadyStatus(false);
   339                         emit setReadyStatus(lst[i], setFlag);
   340             emit setReadyStatus(lst[i], false);
   340                     }
   341         }
   341                 }
       
   342             }
       
   343         }
       
   344 
   342         return;
   345         return;
   343     }
   346     }
   344 
   347 
   345     if (lst[0] == "ADD_TEAM") {
   348     if (lst[0] == "ADD_TEAM") {
   346         if(lst.size() != 24)
   349         if(lst.size() != 24)