From c310a3790e577cd6ff77ff748ce3181192c8a69c Mon Sep 17 00:00:00 2001 From: Jonas Jenwald <jonas.jenwald@gmail.com> Date: Sat, 21 Nov 2015 18:45:06 +0100 Subject: [PATCH] Make `stripCommentHeaders` less greedy, to ensure that it doesn't eat 'use strict' directive at the top of files (PR 6627 follow-up) While browsing through the latest PDF.js update on mozilla-central, see https://hg.mozilla.org/integration/fx-team/rev/aef06cd725fc, I noticed that the `'use strict';` directives were missing at the top of a number of files. This is fallout from the changes made in `make.js` in PR 6627, since `stripCommentHeaders` previously relied on the existence of the mode-lines. I'm assuming that we do want *all* of the code (e.g. the viewer too) to execute in strict mode, hence this patch tweaks `stripCommentHeaders` to make it less greedy. --- make.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/make.js b/make.js index 72f0f3fc0..bb36b4722 100644 --- a/make.js +++ b/make.js @@ -606,8 +606,9 @@ target.singlefile = function() { function stripCommentHeaders(content, filename) { var notEndOfComment = '(?:[^*]|\\*(?!/))+'; var reg = new RegExp( - '\n(?:/\\*' + notEndOfComment + '\\*/\\s*|//(?!#).*\n\\s*)+' + - '\'use strict\';', 'g'); + '\n/\\* Copyright' + notEndOfComment + '\\*/\\s*' + + '(?:/\\*' + notEndOfComment + '\\*/\\s*|//(?!#).*\n\\s*)*' + + '\\s*\'use strict\';', 'g'); content = content.replace(reg, ''); return content; }