From 24180ca49d2e1cf7ff25b07d941ed9729cd35a10 Mon Sep 17 00:00:00 2001 From: Gilles Dubuc Date: Thu, 2 Oct 2014 17:26:37 +0200 Subject: [PATCH] Switch custom code to wfParseUrl which covers the same bugfix Change-Id: I60b20bd7e8f4b25acd5ef2de172786a152c0e589 Mingle: https://wikimedia.mingle.thoughtworks.com/projects/multimedia/cards/301 --- includes/jobqueue/jobs/ThumbnailRenderJob.php | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/includes/jobqueue/jobs/ThumbnailRenderJob.php b/includes/jobqueue/jobs/ThumbnailRenderJob.php index 6b1e7e35ca..dbc4f23ff8 100644 --- a/includes/jobqueue/jobs/ThumbnailRenderJob.php +++ b/includes/jobqueue/jobs/ThumbnailRenderJob.php @@ -81,11 +81,13 @@ class ThumbnailRenderJob extends Job { $thumbUrl = $file->getThumbUrl( $thumbName ); if ( $wgUploadThumbnailRenderHttpCustomDomain ) { - // Workaround for parse_url not handling scheme-less urls properly in PHP < 5.4.7 - if ( substr( $thumbUrl, 0, 2 ) === '//' ) { - $thumbUrl = 'http:' . $thumbUrl; + $parsedUrl = wfParseUrl( $thumbUrl ); + + if ( !$parsedUrl || !isset( $parsedUrl['path'] ) || !strlen( $parsedUrl['path'] ) ) { + return false; } - $thumbUrl = '//' . $wgUploadThumbnailRenderHttpCustomDomain . parse_url( $thumbUrl, PHP_URL_PATH ); + + $thumbUrl = '//' . $wgUploadThumbnailRenderHttpCustomDomain . $parsedUrl['path']; } wfDebug( __METHOD__ . ": hitting url {$thumbUrl}\n" ); -- 2.20.1