ported improved table quoting from 1.4
authorTim Starling <tstarling@users.mediawiki.org>
Sun, 10 Apr 2005 18:26:26 +0000 (18:26 +0000)
committerTim Starling <tstarling@users.mediawiki.org>
Sun, 10 Apr 2005 18:26:26 +0000 (18:26 +0000)
includes/Database.php

index fee9453..7c38b0f 100644 (file)
@@ -964,17 +964,18 @@ class Database {
         */
        function tableName( $name ) {
                global $wgSharedDB;
-               if ( $this->mTablePrefix !== '' ) {
-                       if ( strpos( '.', $name ) === false ) {
-                               $name = $this->mTablePrefix . $name;
+               # Skip quoted literals
+               if ( $name{0} != '`' ) {
+                       if ( $this->mTablePrefix !== '' &&  strpos( '.', $name ) === false ) {
+                               $name = "{$this->mTablePrefix}$name";
                        }
-               }
-               if ( isset( $wgSharedDB ) && 'user' == $name ) {
-                       $name = $wgSharedDB . '.' . $name;
-               }
-               if( $name == 'group' ) {
-                       $name = '`' . $name . '`';
-               }
+                       if ( isset( $wgSharedDB ) && 'user' == $name ) {
+                               $name = "`$wgSharedDB`.`$name`";
+                       } else {
+                               # Standard quoting
+                               $name = "`$name`";
+                       }
+               }               
                return $name;
        }