From 98197cb42ded44c701cb3c5087443ba326bbc58f Mon Sep 17 00:00:00 2001 From: jakubvrana Date: Thu, 18 Feb 2010 14:57:16 +0000 Subject: [PATCH] Clear cache by CREATE DATABASE (bug #2952276) git-svn-id: https://adminer.svn.sourceforge.net/svnroot/adminer/trunk@1318 7c3ca157-0c34-0410-bff1-cbf682f78f5c --- adminer/sql.inc.php | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/adminer/sql.inc.php b/adminer/sql.inc.php index a3013ee7..6af08e5d 100644 --- a/adminer/sql.inc.php +++ b/adminer/sql.inc.php @@ -27,9 +27,7 @@ if (!$error && $_POST) { } $space = "(\\s|/\\*.*\\*/|(#|-- )[^\n]*\n|--\n)"; $alter_database = "(CREATE|DROP)$space+(DATABASE|SCHEMA)\\b~isU"; - $databases = &$_SESSION["databases"][$_GET["server"]]; - if (!ini_get("session.use_cookies") || (isset($databases) && !preg_match("~\\b$alter_database", $query))) { // quick check - may be inside string - //! false positive with $fp and disabled ini_set() and enabled session.use_cookies + if (!ini_get("session.use_cookies")) { session_write_close(); } $delimiter = ";"; @@ -87,7 +85,9 @@ if (!$error && $_POST) { } } else { if (preg_match("~^$space*$alter_database", $query)) { - $databases = null; // clear cache + restart_session(); + $_SESSION["databases"][$_GET["server"]] = null; // clear cache + session_write_close(); } echo "

" . lang('Query executed OK, %d row(s) affected.', $connection->affected_rows) . "\n"; }