diff options
author | George Hazan <george.hazan@gmail.com> | 2015-08-11 13:33:42 +0000 |
---|---|---|
committer | George Hazan <george.hazan@gmail.com> | 2015-08-11 13:33:42 +0000 |
commit | 85bd008c039eb1d93894e94fba9d158a42a71a12 (patch) | |
tree | 2d72d10759f6928e9e4b960175d2de01b5cf7e12 /protocols/Xfire/src/friendsoffriendlist.cpp | |
parent | 222802c2986dcaf029fdfb828b7679bdabfa7bb2 (diff) |
massive code cleaning
git-svn-id: http://svn.miranda-ng.org/main/trunk@14910 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'protocols/Xfire/src/friendsoffriendlist.cpp')
-rw-r--r-- | protocols/Xfire/src/friendsoffriendlist.cpp | 161 |
1 files changed, 81 insertions, 80 deletions
diff --git a/protocols/Xfire/src/friendsoffriendlist.cpp b/protocols/Xfire/src/friendsoffriendlist.cpp index c2c5fa5c70..7a27c2c36b 100644 --- a/protocols/Xfire/src/friendsoffriendlist.cpp +++ b/protocols/Xfire/src/friendsoffriendlist.cpp @@ -23,89 +23,90 @@ */ #include "stdafx.h" -#include <vector> -#include <string> #include "friendsoffriendlist.h" #include "xfireparse.h" #include "variablevalue.h" #include "xdebug.h" -namespace xfirelib { - using namespace std; - - FriendsBuddyListNamesPacket::FriendsBuddyListNamesPacket() { - usernames = 0; - nicks = 0; - userids = 0; - } - FriendsBuddyListNamesPacket::~FriendsBuddyListNamesPacket() { - delete usernames; - delete nicks; - delete userids; - } - - void FriendsBuddyListNamesPacket::parseContent(char *buf, int length, int numberOfAtts) { - int index = 0; - - VariableValue friends; - - XDEBUG2( "Len: %d\n", length ); - - index+=8; //paar bytes überspringen - - int numberOfIds = (unsigned char)buf[index]; - XDEBUG2( "numberofId: %d\n", numberOfIds ); - index++; - index++;//ignore 00 - sids = new vector<char *>; - for(int i = 0 ; i < numberOfIds ; i++) { - index += friends.readValue(buf,index,16); - char *sid = new char[16]; - memcpy(sid,friends.getValue(),16); - sids->push_back(sid); - } - - XERROR("Sids ausgelesen\n"); - - index+=7; - - index+=4; - - userids = new vector<long>; - for(int i = 0 ; i < numberOfIds ; i++) { - index += friends.readValue(buf,index,4); - userids->push_back(friends.getValueAsLong()); - XDEBUG3( "UserID: %ld %ld\n",i+1, friends.getValueAsLong() ); - } - - index+=7; - - usernames = new vector<string>; - index = readStrings(usernames,buf,index); - - index+=7; - - nicks = new vector<string>; - index = readStrings(nicks,buf,index); - - } - - int FriendsBuddyListNamesPacket::readStrings(vector<string> *strings, char *buf, int index) { - VariableValue friends; - index += friends.readValue(buf,index,2); - //index ++; // Ignore 00 - int numberOfStrings = friends.getValueAsLong(); - XDEBUG3( "name: %s numberOfStrings: %d\n", friends.getName().c_str(), numberOfStrings ); - for(int i = 0 ; i < numberOfStrings ; i++) { - int length = (unsigned char)buf[index++]; - index++; - index += friends.readValue(buf,index,length); - string stringvalue = string(friends.getValue(),length); - strings->push_back(stringvalue); - XDEBUG(( "String length: %2d : %s\n", length, stringvalue.c_str() )); - } - return index; - } - -}; +using namespace std; + +namespace xfirelib +{ + FriendsBuddyListNamesPacket::FriendsBuddyListNamesPacket() + { + usernames = 0; + nicks = 0; + userids = 0; + } + + FriendsBuddyListNamesPacket::~FriendsBuddyListNamesPacket() + { + delete usernames; + delete nicks; + delete userids; + } + + void FriendsBuddyListNamesPacket::parseContent(char *buf, int, int) + { + int index = 0; + + VariableValue friends; + + index += 8; //paar bytes überspringen + + int numberOfIds = (unsigned char)buf[index]; + XDEBUG2("numberofId: %d\n", numberOfIds); + index++; + index++;//ignore 00 + sids = new vector<char *>; + for (int i = 0; i < numberOfIds; i++) { + index += friends.readValue(buf, index, 16); + char *sid = new char[16]; + memcpy(sid, friends.getValue(), 16); + sids->push_back(sid); + } + + XERROR("Sids ausgelesen\n"); + + index += 7; + + index += 4; + + userids = new vector<long>; + for (int i = 0; i < numberOfIds; i++) { + index += friends.readValue(buf, index, 4); + userids->push_back(friends.getValueAsLong()); + XDEBUG3("UserID: %ld %ld\n", i + 1, friends.getValueAsLong()); + } + + index += 7; + + usernames = new vector<string>; + index = readStrings(usernames, buf, index); + + index += 7; + + nicks = new vector<string>; + index = readStrings(nicks, buf, index); + + } + + int FriendsBuddyListNamesPacket::readStrings(vector<string> *strings, char *buf, int index) + { + VariableValue friends; + index += friends.readValue(buf, index, 2); + //index ++; // Ignore 00 + int numberOfStrings = friends.getValueAsLong(); + XDEBUG3("name: %s numberOfStrings: %d\n", friends.getName().c_str(), numberOfStrings); + for (int i = 0; i < numberOfStrings; i++) { + int length = (unsigned char)buf[index++]; + index++; + index += friends.readValue(buf, index, length); + string stringvalue = string(friends.getValue(), length); + strings->push_back(stringvalue); + XDEBUG(("String length: %2d : %s\n", length, stringvalue.c_str())); + } + return index; + } +} |