mirror of https://github.com/aria2/aria2
2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Rewritten util::toHex(). * src/util.ccpull/1/head
parent
65b9af6e09
commit
ca54ff894e
|
@ -1,3 +1,8 @@
|
|||
2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Rewritten util::toHex().
|
||||
* src/util.cc
|
||||
|
||||
2010-03-05 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
|
||||
|
||||
Removed SocketBuffer::feedAndSend(). Renamed
|
||||
|
|
22
src/util.cc
22
src/util.cc
|
@ -323,14 +323,22 @@ std::string urldecode(const std::string& target) {
|
|||
}
|
||||
|
||||
std::string toHex(const unsigned char* src, size_t len) {
|
||||
char* temp = new char[len*2+1];
|
||||
for(size_t i = 0; i < len; ++i) {
|
||||
sprintf(temp+i*2, "%02x", src[i]);
|
||||
std::string out(len*2, '\0');
|
||||
std::string::iterator o = out.begin();
|
||||
const unsigned char* last = src+len;
|
||||
for(const unsigned char* i = src; i != last; ++i) {
|
||||
*o = (*i >> 4);
|
||||
*(o+1) = (*i)&0x0f;
|
||||
for(int j = 0; j < 2; ++j) {
|
||||
if(*o < 10) {
|
||||
*o += '0';
|
||||
} else {
|
||||
*o += 'a'-10;
|
||||
}
|
||||
++o;
|
||||
}
|
||||
}
|
||||
temp[len*2] = '\0';
|
||||
std::string hex = temp;
|
||||
delete [] temp;
|
||||
return hex;
|
||||
return out;
|
||||
}
|
||||
|
||||
std::string toHex(const char* src, size_t len)
|
||||
|
|
Loading…
Reference in New Issue