Wrap skin specific user js addition inside Title::exists
authorNiklas Laxström <nikerabbit@users.mediawiki.org>
Fri, 22 Jan 2010 20:39:03 +0000 (20:39 +0000)
committerNiklas Laxström <nikerabbit@users.mediawiki.org>
Fri, 22 Jan 2010 20:39:03 +0000 (20:39 +0000)
This should help to reduce unnecessary requests, especially where action=raw is serving
uncached 404 responses in some uncommon configurations.

includes/OutputPage.php

index a4cbecc..04f1f04 100644 (file)
@@ -1725,10 +1725,14 @@ class OutputPage {
                                $this->addInlineScript( $wgRequest->getText( 'wpTextbox1' ) );
                        } else {
                                $userpage = $wgUser->getUserPage();
-                               $userjs = Skin::makeUrl(
-                                       $userpage->getPrefixedText() . '/' . $sk->getSkinName() . '.js',
-                                       'action=raw&ctype=' . $wgJsMimeType );
-                               $this->addScriptFile( $userjs );
+                               $scriptpage = Title::newFromText(
+                                       $userpage->getNamespace(),
+                                       $userpage->getPrefixedText() . '/' . $sk->getSkinName() . '.js'
+                               );
+                               if ( $scriptpage && $scriptpage->exists() ) {
+                                       $userjs = Skin::makeUrl( $scriptpage->getPrefixedText(), 'action=raw&ctype=' . $wgJsMimeType );
+                                       $this->addScriptFile( $userjs );
+                               }
                        }
                }