Fixed wrong field definition for filearchive. Fixed delete function to handle encodin...
authorJure Kajzer <freakolowsky@users.mediawiki.org>
Fri, 27 Nov 2009 13:44:57 +0000 (13:44 +0000)
committerJure Kajzer <freakolowsky@users.mediawiki.org>
Fri, 27 Nov 2009 13:44:57 +0000 (13:44 +0000)
includes/db/DatabaseOracle.php
maintenance/ora/tables.sql

index 794186d..b35035b 100644 (file)
@@ -1058,7 +1058,13 @@ class DatabaseOracle extends DatabaseBase {
                                if ($col_type == 'CLOB')
                                        $conds2['TO_CHAR('.$col.')'] = $wgLang->checkTitleEncoding($val);
                                else
-                                       $conds2[$col] = $wgLang->checkTitleEncoding($val);
+                                       if (is_array($val)) {
+                                               $conds2[$col] = $val;
+                                               foreach($conds2[$col] as &$val2)
+                                                       $val2 = $wgLang->checkTitleEncoding($val2);
+                                       } else {
+                                               $conds2[$col] = $wgLang->checkTitleEncoding($val);
+                                       }
                        }
                
                        return parent::delete( $table, $conds2, $fname );
index c300e93..f21ad0b 100644 (file)
@@ -302,7 +302,7 @@ CREATE TABLE &mw_prefix.filearchive (
   fa_media_type         VARCHAR2(32) DEFAULT NULL,
   fa_major_mime         VARCHAR2(32) DEFAULT 'unknown',
   fa_minor_mime         VARCHAR2(32) DEFAULT 'unknown',
-  fa_description        VARCHAR2(255)         NOT NULL,
+  fa_description        VARCHAR2(255),
   fa_user               NUMBER          NULL  REFERENCES &mw_prefix.mwuser(user_id) ON DELETE SET NULL,
   fa_user_text          VARCHAR2(255)         NOT NULL,
   fa_timestamp          TIMESTAMP(6) WITH TIME ZONE,