Topic on Project:Support desk

Vector Skin Not Loading After Update to 1.22

9
Summary by Aaron Beaty

There was a bug in 1.22 that caused the Vector skin to not load. It has been fixed with the release of version 1.23.0

128.63.10.33 (talkcontribs)

MW 1.22.2 PHP 5.4.1 MySQL 5.5.24

I upgraded my intranet wiki from 1.21 to MediaWiki 1.22.1 and the Vector Skin stopped working. I hoped upgrading to 1.22.2 might fix something, but no. I can load any of the other skins and they work just fine. Everything else with the wiki appears to be working properly. Its an internal only wiki so no link. Does anyone have any ideas? I tried googling but couldn't find anything that helped.

88.130.112.154 (talkcontribs)

What does "stopped working" look like for you? If all you see is a blank page, then follow the instructions on blank page and give us the error message! Checking the PHP error log might be a good idea anyway - it often contains useful information!

I guess that you have some kind of caching problem; try to empty all caches you can think of (MediaWiki, Apache, PHP code cache, proxy cache, browser cache...) and try, if it solves the problem.

128.63.10.33 (talkcontribs)

Sorry, "stopped working" means the styles aren't loading. The content is displayed all along the left side of the page. I cleared all the caches, PHP and browser, and restarted IIS with no luck. The only errors that I can find are in the IIS log:

  • GET /w/load.php debug=false&lang=en&modules=ext.rtlcite%7Cmediawiki.legacy.commonPrint%2Cshared%7Cskins.vector&only=styles&skin=vector&* 443 username IP Mozilla/5.0+(compatible;+MSIE+9.0;+Windows+NT+6.1;+WOW64;+Trident/5.0) 500 0 64 1478
  • GET /w/Main_Page - 443 username IP Mozilla/5.0+(compatible;+MSIE+9.0;+Windows+NT+6.1;+WOW64;+Trident/5.0) 500 0 0 1452
  • GET /w/load.php debug=true&lang=en&modules=skins.vector&only=styles&skin=vector&* 443 username IP Mozilla/5.0+(compatible;+MSIE+9.0;+Windows+NT+6.1;+WOW64;+Trident/5.0) 500 0 0 2277
Ciencia Al Poder (talkcontribs)

Open the URLs that are causing errors in your browser and see if it contains a detailed error message.

Look at Manual:How_to_debug#PHP_errors to turn on display of errors on pages if they show as blank pages.

128.63.10.33 (talkcontribs)

Main_Page loads the content of the page just fine. Load.php just brings up a .js file that says "/* No modules requested. Max made me put this here */"

88.130.73.139 (talkcontribs)

You need to open the link to load.php with all the parameters with your browser. When I read your error log entries correctly, then you should see an error 500 then, I guess...

128.63.10.33 (talkcontribs)

Taking the top error "GET /w/load.php ..." gives the following in the browser:

  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAFgAAAAQCAMAAAClQEgHAAADAFBMVEXz+fv///91w/+t3P/G0NOh2v/N2evy/v665f/O7P7O8f/C5f+FuuePtcGW1v+O0f6g1v/a1cvCsnHx45T5+vzKwq2+rGN5xP/f2s/6+vme1v+b1P+HzP+W0v9zwf+Uv86+rXT+/uuFxPTEsmWi3f/Y8v+z3/+Y1//k1IuZ2v9xxP/JtmTo7POJw+664v/C7f+xx+F+tuPj5ufq7e2Ktsbs8fl9zP/R3vDD6v/Ny4v1/v+Gy/+zz6utvcKJxPLU7v+Ou87Wz768zJShydqUsrx3xf//+9WUyvS02Oqn3v+j3frZ6M3i9v/Nw3uw3f+98/+Erb7It4iSuuLbx2uIrbqCteJxw/++5v+Lzv/K1NXt/P+9rWi/soaxqZDPzMZsvv/r6ufy8O319vdovf/+/f3x7+qt3/++tqTy8vDf2czIslD29vWq2v/8/Pu+rnfBs4hnu/+Rz/9uwP/V0s3n03fo5uGk1//HwK7Pu2nk3tPRybb57ave2tPDsnaDyf/5+Pb6//+ozt/J4czO2ark9Py7q3T9/f78/f2SwPCTwdC0xMfd+f+R0f+W0unFvmjR3Oyc0PqyxdvO6fmt2u7b4OHn6+zP2dp2uvHV4vP58szv/P/DvXP//M+AzP/x5avC0pP2+fyNs8J/u+zU3em5rW16tejU7e2q19bA5fnVxXl0wf++2bLbynx8tdHh5/H16ar///zP1NvOvGjAs4/l5rnv//+erbHLvGj///l+uufCtI/09fb6+/vO3PC93c/a8fmv3P/z9ficyuWw3/+our3BrnOHt+KR1/+24v3Numje2dDW7+TH in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/gif;base64,R0lGODlhEAAQAMQfANra2uLi4vDw8PLy8ujo6Ozs7NbW1vj4+Pb29s7Oztzc3NTU1O7u7uDg4NHR0erq6v39/d7e3vz8/Pv7+/7+/tPT09jY2Pr6+tnZ2efn5/X19eXl5ebm5vT09P///////yH/C05FVFNDQVBFMi4wAwEAAAAh+QQJAwAfACwAAAAAEAAQAAAFa+Anjl9QkShacVqabp2XuKjjecHhStrjHDdIgtORiCyWSEZwud0mg0zEUhkYnNhsY/O5OCRZrEEwgvzCkgqZhGiEB1wUgRGeAFKApqcjcJ5QCx4aFQEECX1/JAlJJBsVFRMkEBkXLhyVNJkhACH5BAkDAB8ALAAAAAAQABAAAAV74CeO4hUQZEoGhqGqWzQtEnlYRCYMGSB5BkTKQCgUOBGPkjBIdQDKqBLhaJI4D6l0gylMRg6IVkmhNBIjxWBM8XAwHNFAIdYWDA0SRhNtKy0CJAUVEAcRAQJkFikZDg4EBB0RDR4dGCkIEhAjFBsBDwovKo0BoioFQiMhACH5BAkDAB8ALAAAAAAQABAAAAWB4CeO5HeU33OVl5IIpYEFh/QR1rYNZSMUAYVBwfBYbKRJwwPxFDxQjAbloECvHgMEBUBgPZTApjSxeL+eQGDUsQwkaGhBcUBYinGI5GBIEBwEGhxwVwwLFgoRHQwECgIADRFXBgUfEygfEBEDTmuYIxAJFAYwnyMFABVbpiMYGSghACH5BAkDAB8ALAAAAAAQABAAAAV+4CdKjWieKOJs6De1U5Zhg4YcmaG0kXcElQDtEWkZPMgMBGlofQDIqK9pmhAADClSEDBtAICJROvR7EQGx5LsgQAOogKm0LhQ2IDRQRJRFKIHAh4X in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAdUlEQVQYV2P4//8/Awxv3LThf0dXKxyD+DA5DEUg+tWrV2AaWTFcIboJyJrhCtGtRMcgebhpL2/4/v//Lvn//x+7IRjIfn8v+P/t055gxZgKPzaC8Y/nMYQVLpnM8f/zo3AqKfzyOOL/h/sh/59c9sBUSIyvAeRdJWjk4E//AAAAAElFTkSuQmCC in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAMAAAC67D+PAAAAMFBMVEX///////+IioX29vbq6unJx8O9vbvl5ePZ2NX7+/iysrLp5+KjoZyop6Oxrqrx8O1Uz2ohAAAAAXRSTlMAQObYZgAAAENJREFUeNotxscBwCAMA0AsudAS9t82hnCvK2kAUQ6FCPSuzvy/x3wf0RFir6KAnbKqMSstMEnZZW/0cWqNVMs6Lv8AS44BeHjFSEUAAAAASUVORK5CYII= in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAe0lEQVR42o2QQQqAIBBFPbDXCKJTGBTRIqJN7qL2gp5BcOEppvowSWSU8HDxn38GRVkV9AeIH+cuSilvxBhJKfUQEWR4iHjNcNtBXly3Bbf3nnltZDHbiFHWOmCMuXDWIYM4TgNpPVMIIY1MIOv6lgQRiaat3z4ae5/ODo3dPZDhr8jNAAAAAElFTkSuQmCC in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAYAAACNMs+9AAAAdElEQVR42n3Q3QqAIAwGUF8+iF4rCrwpewzxH7y3tnSgrAafMHaQqdj2tczL9BmYPyUEND8FuIda6y7GGBbCAGOtxaSUWEjIOVe89zyshSCEwO+oLtWahrpXSylfCEeFhE51lBhjyTkjIjj+24gI1ltowOUGKEFJ6nMQqWQAAAAASUVORK5CYII= in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKBAMAAAB/HNKOAAAAMFBMVEX///91fyrI0Xt5gzPCzGuyv0bw8eubomu3u5qQlWafo4HV25q3w1CLljOEjjKRlHTuBCtpAAAAAXRSTlMAQObYZgAAADdJREFUCFtjYGgUFBRnYBBSUlJkYDCCkIKCIFKAEUZmiohNdGRYs/XW6VgGkbhC1xcMjB8Y5BMA6nkLTrUjfj0AAAAASUVORK5CYII= in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76
  • PHP Warning: file_exists(): File name is longer than the maximum allowed path length on this platform (260): C:\inetpub\wwwroot\w/skins/vector/data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAoAAAAKCAAAAACoWZBhAAAAAnRSTlMA/1uRIrUAAABbSURBVHjaLY2xCUAxCAVdXbAOWLrE663sAoJkhZA5UuQn8Ltr7o7O7iqifR/asJwzDZtGG8bh1QZpBizYUkkWvApYcpGtyh9quiOMU5+GBo+rvVjNlBv7F9H4A3inRvd0XEi0AAAAAElFTkSuQmCC in C:\inetpub\wwwroot\w\includes\libs\CSSMin.php on line 76


The path isn't longer than 260 so I'm not sure what its talking about.

Ciencia Al Poder (talkcontribs)

This seems to be a bug.

https://git.wikimedia.org/blob/mediawiki%2Fcore.git/REL1_22/includes%2Flibs%2FCSSMin.php#L76

It's looking for file_exists() based on the match of URL_REGEX, which only takes into account all url() values in CSS, but it doesn't filter for data: URL, which is unnecessarily feeding file_exists() for data: URLs that aren't going to be found on the server.

In fact, I don't see any further validation on those paths, so I don't know if a malicious CSS file can expose any file accessible from PHP.

Can you please file a bug report about this?

Reply to "Vector Skin Not Loading After Update to 1.22"