From 021e1e319c3b37c4db8f8c87b574ea321721cc9b Mon Sep 17 00:00:00 2001 From: Jakub Vrana Date: Mon, 14 Mar 2011 11:24:52 +0100 Subject: [PATCH] Allow % in view definer (thanks to Tomas Votruba) --- adminer/include/adminer.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/adminer/include/adminer.inc.php b/adminer/include/adminer.inc.php index 1ac76419..38479b4b 100644 --- a/adminer/include/adminer.inc.php +++ b/adminer/include/adminer.inc.php @@ -521,7 +521,7 @@ username.form['driver'].onchange(); } if ($is_view) { // remove DEFINER with current user - $create = preg_replace('~^([A-Z =]+) DEFINER=`' . str_replace("@", "`@`", logged_user()) . '`~', '\\1', $create); //! proper escaping of user + $create = preg_replace('~^([A-Z =]+) DEFINER=`' . preg_replace('~@(.*)~', '`@`(%|\\1)', logged_user()) . '`~', '\\1', $create); //! proper escaping of user } echo ($style != "CREATE+ALTER" ? $create : ($is_view ? substr_replace($create, " OR REPLACE", 6, 0) : substr_replace($create, " IF NOT EXISTS", 12, 0))) . ";\n\n"; }