From: Jakub Vrana Date: Tue, 9 Feb 2021 19:19:43 +0000 (+0100) Subject: MongoDB: Use ObjectID only if used X-Git-Tag: v4.8.0~8 X-Git-Url: https://git.joonet.de/?a=commitdiff_plain;h=a61a76716b30696fd7b4da863a8e63ca9e30e505;p=adminer.git MongoDB: Use ObjectID only if used --- diff --git a/adminer/drivers/mongo.inc.php b/adminer/drivers/mongo.inc.php index 6b043933..7dbcf76b 100644 --- a/adminer/drivers/mongo.inc.php +++ b/adminer/drivers/mongo.inc.php @@ -300,10 +300,8 @@ if (isset($_GET["mongo"])) { if (is_array($where)) { foreach ($where as $expression) { list($col, $op, $val) = explode(" ", $expression, 3); - if ($col == "_id") { - $val = str_replace('MongoDB\BSON\ObjectID("', "", $val); - $val = str_replace('")', "", $val); - $class = 'MongoDB\BSON\ObjectID'; + if ($col == "_id" && preg_match('~^(MongoDB\\\\BSON\\\\ObjectID)\("(.+)"\)$~', $val, $match)) { + list(, $class, $val) = $match; $val = new $class($val); } if (!in_array($op, $adminer->operators)) {