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;
 }