From 96f3d926b9ae47c756d325bee3b719a0abd1b23a Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Mon, 5 Nov 2012 19:00:42 -0800 Subject: [PATCH] Significant optimizations. --- database/SqliteDatabase.cpp | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) diff --git a/database/SqliteDatabase.cpp b/database/SqliteDatabase.cpp index 60d785d0c..cbefe8759 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