Fixed another bug in wfGeneralizeSQL(). This time it's perfect.
authorMr. E23 <e23@users.mediawiki.org>
Wed, 19 Nov 2003 17:09:42 +0000 (17:09 +0000)
committerMr. E23 <e23@users.mediawiki.org>
Wed, 19 Nov 2003 17:09:42 +0000 (17:09 +0000)
includes/DatabaseFunctions.php

index ebd9b79..854a3c0 100644 (file)
@@ -199,12 +199,12 @@ function wfInvertTimestamp( $ts ) {
 # It's only slightly flawed. Don't use for anything important.
 function wfGeneralizeSQL( $sql )
 {
-        # This could be done faster with some arrays and a single preg_replace,
-        # but this show more clearly what's going on. Which may be a good thing.
-        $sql = preg_replace ( "/([\'\"])([^\\\\]|\\\\\\\\)*?\\1/", "\\1X\\1", $sql);
-        $sql = preg_replace ( "/-?\d+/" , "N", $sql);
-        $sql = preg_replace ( "/\s+/", " ", $sql);
-        return $sql;
+       # This could be done faster with some arrays and a single preg_replace,
+       # but this show more clearly what's going on. Which may be a good thing.
+       $sql = preg_replace ( "/'([^\\\\']|\\\\.)*'|\"([^\\\\\"]|\\\\.)*\"/", "'X'", $sql);
+       $sql = preg_replace ( "/-?\d+/" , "N", $sql);
+       $sql = preg_replace ( "/\s+/", " ", $sql);
+       return $sql;
 }
 
 function wfFieldExists( $table, $field )