Merge "Skin: Make skins aware of their registered skin name"
[lhc/web/wiklou.git] / includes / libs / virtualrest / RestbaseVirtualRESTService.php
index 35c45de..192b4bd 100644 (file)
@@ -61,11 +61,9 @@ class RestbaseVirtualRESTService extends VirtualRESTService {
                        'fixedUrl' => false,
                ], $params );
                // Ensure that the url parameter has a trailing slash.
-               $mparams['url'] = preg_replace(
-                       '#/?$#',
-                       '/',
-                       $mparams['url']
-               );
+               if ( substr( $mparams['url'], -1 ) !== '/' ) {
+                       $mparams['url'] .= '/';
+               }
                // Ensure the correct domain format: strip protocol, port,
                // and trailing slash if present.  This lets us use
                // $wgCanonicalServer as a default value, which is very convenient.
@@ -114,6 +112,10 @@ class RestbaseVirtualRESTService extends VirtualRESTService {
 
        /**
         * Remaps Parsoid v1/v3 requests to RESTBase v1 requests.
+        * @param array $reqs
+        * @param Closure $idGeneratorFunc
+        * @return array
+        * @throws Exception
         */
        public function onParsoidRequests( array $reqs, Closure $idGeneratorFunc ) {
                $result = [];
@@ -147,6 +149,10 @@ class RestbaseVirtualRESTService extends VirtualRESTService {
         * NOTE: the POST APIs aren't "real" Parsoid v1 APIs, they are just what
         * Visual Editor "pretends" the V1 API is like.  (See
         * ParsoidVirtualRESTService.)
+        * @param array $req
+        * @param Closure $idGeneratorFunc
+        * @return array
+        * @throws Exception
         */
        public function onParsoid1Request( array $req, Closure $idGeneratorFunc ) {
                $parts = explode( '/', $req['url'] );
@@ -235,6 +241,10 @@ class RestbaseVirtualRESTService extends VirtualRESTService {
         *   * body: array( 'wikitext' => ... ) or array( 'wikitext' => ..., 'body_only' => true/false )
         *   * $title is optional
         *   * $revision is optional
+        * @param array $req
+        * @param Closure $idGeneratorFunc
+        * @return array
+        * @throws Exception
         */
        public function onParsoid3Request( array $req, Closure $idGeneratorFunc ) {
                $parts = explode( '/', $req['url'] );