diff options
author | Remi Collet <fedora@famillecollet.com> | 2015-03-17 15:12:39 +0100 |
---|---|---|
committer | Remi Collet <fedora@famillecollet.com> | 2015-03-17 15:12:39 +0100 |
commit | 155f13ffad1288e6dc9eb31fb2a1443590c943a2 (patch) | |
tree | 6479b20b58a17595a9be736a659a0b710f1af6ee /dc3c4073c2060d62a8578848c5d222a8b7608df1.patch |
php-patchwork-jsqueeze: import from rawhide
Diffstat (limited to 'dc3c4073c2060d62a8578848c5d222a8b7608df1.patch')
-rw-r--r-- | dc3c4073c2060d62a8578848c5d222a8b7608df1.patch | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/dc3c4073c2060d62a8578848c5d222a8b7608df1.patch b/dc3c4073c2060d62a8578848c5d222a8b7608df1.patch new file mode 100644 index 0000000..6cc4e69 --- /dev/null +++ b/dc3c4073c2060d62a8578848c5d222a8b7608df1.patch @@ -0,0 +1,68 @@ +From dc3c4073c2060d62a8578848c5d222a8b7608df1 Mon Sep 17 00:00:00 2001 +From: Nicolas Grekas <nicolas.grekas@gmail.com> +Date: Mon, 16 Mar 2015 19:14:38 +0100 +Subject: [PATCH] Fix #15 when ";" is missing before else/while + +--- + src/JSqueeze.php | 1 + + tests/uglifyjs/expected/if.js | 3 ++- + tests/uglifyjs/expected/ifreturn.js | 3 ++- + tests/uglifyjs/expected/issue10.js | 3 ++- + tests/uglifyjs/expected/tchwork-15.js | 2 ++ + tests/uglifyjs/test/tchwork-15.js | 2 ++ + 6 files changed, 11 insertions(+), 3 deletions(-) + create mode 100644 tests/uglifyjs/expected/tchwork-15.js + create mode 100644 tests/uglifyjs/test/tchwork-15.js + +diff --git a/src/JSqueeze.php b/src/JSqueeze.php +index b85edeb..e6da80e 100644 +--- a/src/JSqueeze.php ++++ b/src/JSqueeze.php +@@ -162,6 +162,7 @@ function squeeze($code, $singleLine = true, $keepImportantComments = true, $spec + + $code = substr($tree[$key]['code'], 1); + $code = preg_replace("'\breturn !'", 'return!', $code); ++ $code = preg_replace("'\}(?=(else|while)[^\$.a-zA-Z0-9_])'", "}\r", $code); + $code = str_replace(array_keys($this->strings), array_values($this->strings), $code); + + if ($singleLine) $code = strtr($code, "\n", ';'); +diff --git a/tests/uglifyjs/expected/if.js b/tests/uglifyjs/expected/if.js +index c347e25..7f4fde1 100644 +--- a/tests/uglifyjs/expected/if.js ++++ b/tests/uglifyjs/expected/if.js +@@ -1 +1,2 @@ +-;var a=1;if(a==1){a=2}else{a=17}; ++;var a=1;if(a==1){a=2} ++else{a=17}; +diff --git a/tests/uglifyjs/expected/ifreturn.js b/tests/uglifyjs/expected/ifreturn.js +index ec6b59d..1a85e9c 100644 +--- a/tests/uglifyjs/expected/ifreturn.js ++++ b/tests/uglifyjs/expected/ifreturn.js +@@ -1 +1,2 @@ +-;function a(r){if(r==1){return 2}else{return 17};return 3}; ++;function a(r){if(r==1){return 2} ++else{return 17};return 3}; +diff --git a/tests/uglifyjs/expected/issue10.js b/tests/uglifyjs/expected/issue10.js +index afa9e0c..ec193b0 100644 +--- a/tests/uglifyjs/expected/issue10.js ++++ b/tests/uglifyjs/expected/issue10.js +@@ -1 +1,2 @@ +-;function f(){var r;if(r='a'){return r}else{return r}};f(); ++;function f(){var r;if(r='a'){return r} ++else{return r}};f(); +diff --git a/tests/uglifyjs/expected/tchwork-15.js b/tests/uglifyjs/expected/tchwork-15.js +new file mode 100644 +index 0000000..59972e2 +--- /dev/null ++++ b/tests/uglifyjs/expected/tchwork-15.js +@@ -0,0 +1,2 @@ ++;if(foo)var bar=function(){} ++else baz; +diff --git a/tests/uglifyjs/test/tchwork-15.js b/tests/uglifyjs/test/tchwork-15.js +new file mode 100644 +index 0000000..cbe8c16 +--- /dev/null ++++ b/tests/uglifyjs/test/tchwork-15.js +@@ -0,0 +1,2 @@ ++if (foo) var bar = function() {} ++else baz; |