diff --git a/database/SqliteDatabase.cpp b/database/SqliteDatabase.cpp index 60d785d0c8..cbefe8759c 100644 --- a/database/SqliteDatabase.cpp +++ b/database/SqliteDatabase.cpp @@ -181,15 +181,21 @@ X'53514C697465' */ void SqliteDatabase::escape(const unsigned char* start, int size, std::string& retStr) { - retStr="X'"; + static const char toHex[16] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', + 'A', 'B', 'C', 'D', 'E', 'F' }; - char buf[3]; - for(int n=0; n> 4]; + retStr[pos++] = toHex[start[n] & 0x0f]; } - retStr.push_back('\''); + retStr[pos] = '\''; } + // vim:ts=4