Index: chrome/browser/resources/print_preview/common/search_box.js |
diff --git a/chrome/browser/resources/print_preview/common/search_box.js b/chrome/browser/resources/print_preview/common/search_box.js |
index a16efc7c0910dcb0460d57dbab7b0dc45bdb0aae..4291dbf9482d3e1fb4cba6609577a78ce32927f7 100644 |
--- a/chrome/browser/resources/print_preview/common/search_box.js |
+++ b/chrome/browser/resources/print_preview/common/search_box.js |
@@ -97,7 +97,11 @@ cr.define('print_preview', function() { |
dispatchSearchEvent_: function() { |
this.timeout_ = null; |
var searchEvent = new Event(SearchBox.EventType.SEARCH); |
- searchEvent.query = this.getQuery_(); |
+ var query = this.getQuery_(); |
+ searchEvent.query = query; |
+ // Generate regexp-safe query by escaping metacharacters. |
+ var safeQuery = query.replace(/[-[\]{}()*+?.,\\^$|#\s]/g, '\\$&'); |
+ searchEvent.queryRegExp = new RegExp('(' + safeQuery + ')', 'ig'); |
this.dispatchEvent(searchEvent); |
}, |