From a5de04f24a33d2143fbf0d025db249e628bf2eb5 Mon Sep 17 00:00:00 2001 From: Roan Kattouw Date: Sat, 14 May 2011 13:34:03 +0000 Subject: [PATCH] Fix bug in r87497, reported in CR: &modules=foo,bar,baz would look for '.foo', '.ar' and '.az' . Now handling prefixless modules correctly --- includes/resourceloader/ResourceLoaderContext.php | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/includes/resourceloader/ResourceLoaderContext.php b/includes/resourceloader/ResourceLoaderContext.php index 581f971a32..f81f7cab97 100644 --- a/includes/resourceloader/ResourceLoaderContext.php +++ b/includes/resourceloader/ResourceLoaderContext.php @@ -83,10 +83,16 @@ class ResourceLoaderContext { } else { // This is a set of modules in foo.bar,baz notation $pos = strrpos( $group, '.' ); - $prefix = substr( $group, 0, $pos ); // 'foo' - $suffixes = explode( ',', substr( $group, $pos + 1 ) ); // array( 'bar', 'baz' ) - foreach ( $suffixes as $suffix ) { - $retval[] = "$prefix.$suffix"; + if ( $pos === false ) { + // Prefixless modules, i.e. without dots + $retval = explode( ',', $group ); + } else { + // We have a prefix and a bunch of suffixes + $prefix = substr( $group, 0, $pos ); // 'foo' + $suffixes = explode( ',', substr( $group, $pos + 1 ) ); // array( 'bar', 'baz' ) + foreach ( $suffixes as $suffix ) { + $retval[] = "$prefix.$suffix"; + } } } } -- 2.20.1