diff --git a/src/Symfony/Framework/ProfilerBundle/ProfilerStorage.php b/src/Symfony/Framework/ProfilerBundle/ProfilerStorage.php index 09ebb73f80..1c0378091c 100644 --- a/src/Symfony/Framework/ProfilerBundle/ProfilerStorage.php +++ b/src/Symfony/Framework/ProfilerBundle/ProfilerStorage.php @@ -58,14 +58,20 @@ class ProfilerStorage protected function read() { $db = $this->initDb(SQLITE3_OPEN_CREATE | SQLITE3_OPEN_READ); - $this->data = $db->querySingle(sprintf("SELECT data FROM data WHERE token = '%s' LIMIT 1 ORDER BY created_at DESC", $db->escapeString($this->token))); + $data = $db->querySingle(sprintf("SELECT data FROM data WHERE token = '%s' LIMIT 1 ORDER BY created_at DESC", $db->escapeString($this->token))); + + $this->data = unserialize(pack('H*', $data)); + $db->close(); } public function write($data) { + $unpack = unpack('H*', serialize($data)); + $data = $unpack[1]; + $db = $this->initDb(SQLITE3_OPEN_CREATE | SQLITE3_OPEN_READWRITE); - $db->exec(sprintf("INSERT INTO data (token, data, created_at) VALUES ('%s', '%s', %s)", $db->escapeString($this->token), $db->escapeString(serialize($data)), time())); + $db->exec(sprintf("INSERT INTO data (token, data, created_at) VALUES ('%s', '%s', %s)", $db->escapeString($this->token), $db->escapeString($data), time())); $db->close(); }