From ff0bf055e03d9edd928714f21e303ebc117288e2 Mon Sep 17 00:00:00 2001 From: timoid Date: Thu, 23 Aug 2018 22:07:42 +1000 Subject: [PATCH] Add files via upload --- fix-serialization.php | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/fix-serialization.php b/fix-serialization.php index 2795801..7c712dd 100755 --- a/fix-serialization.php +++ b/fix-serialization.php @@ -109,7 +109,19 @@ function unescape_quotes($value) { $do_preg_replace = true; // Replace serialized string values - $data = preg_replace('!s:(\d+):([\\\\]?"[\\\\]?"|[\\\\]?"((.*?)[^\\\\])[\\\\]?");!e', "'s:'.strlen(unescape_mysql('$3')).':\"'.unescape_quotes('$3').'\";'", $data); + $data = preg_replace_callback('!s:(\d+):([\\\\]?"[\\\\]?"|[\\\\]?"((.*?)[^\\\\])[\\\\]?");!', + function ($m) + { + if (count($strResult) > 3) + { + return 's:'.strlen(unescape_mysql($strResult[3])).':\"'.unescape_quotes($strResult[3]).'\";'; + } + else + { + return $strResult[0]; + } + }, + $data); } // Close file