Bug 1395613 - import bundles from devtools-source-map 0.12.0; r?bgrins
MozReview-Commit-ID: n5XTA3YN3G
--- a/devtools/client/shared/source-map/index.js
+++ b/devtools/client/shared/source-map/index.js
@@ -570,22 +570,27 @@ return /******/ (function(modules) { //
};
function workerHandler(publicInterface) {
return function (msg) {
const { id, method, args } = msg.data;
try {
const response = publicInterface[method].apply(undefined, args);
if (response instanceof Promise) {
- response.then(val => self.postMessage({ id, response: val }), err => self.postMessage({ id, error: err }));
+ response.then(val => self.postMessage({ id, response: val }),
+ // Error can't be sent via postMessage, so be sure to
+ // convert to string.
+ err => self.postMessage({ id, error: err.toString() }));
} else {
self.postMessage({ id, response });
}
} catch (error) {
- self.postMessage({ id, error });
+ // Error can't be sent via postMessage, so be sure to convert to
+ // string.
+ self.postMessage({ id, error: error.toString() });
}
};
}
function streamingWorkerHandler(publicInterface, { timeout = 100 } = {}, worker = self) {
let streamingWorker = (() => {
var _ref = _asyncToGenerator(function* (id, tasks) {
let isWorking = true;
--- a/devtools/client/shared/source-map/worker.js
+++ b/devtools/client/shared/source-map/worker.js
@@ -559,22 +559,27 @@ return /******/ (function(modules) { //
};
function workerHandler(publicInterface) {
return function (msg) {
const { id, method, args } = msg.data;
try {
const response = publicInterface[method].apply(undefined, args);
if (response instanceof Promise) {
- response.then(val => self.postMessage({ id, response: val }), err => self.postMessage({ id, error: err }));
+ response.then(val => self.postMessage({ id, response: val }),
+ // Error can't be sent via postMessage, so be sure to
+ // convert to string.
+ err => self.postMessage({ id, error: err.toString() }));
} else {
self.postMessage({ id, response });
}
} catch (error) {
- self.postMessage({ id, error });
+ // Error can't be sent via postMessage, so be sure to convert to
+ // string.
+ self.postMessage({ id, error: error.toString() });
}
};
}
function streamingWorkerHandler(publicInterface, { timeout = 100 } = {}, worker = self) {
let streamingWorker = (() => {
var _ref = _asyncToGenerator(function* (id, tasks) {
let isWorking = true;