summaryrefslogtreecommitdiffstats
path: root/dom/workers/WorkerPrivate.h
diff options
context:
space:
mode:
authorGaming4JC <g4jc@hyperbola.info>2019-06-16 11:27:39 -0400
committerGaming4JC <g4jc@hyperbola.info>2019-07-18 22:38:33 -0400
commitc76e66fc3d8b2f86f4d406f0700149cc1f4719a5 (patch)
tree91ba7545342a8b9888299c25382689ee9f602978 /dom/workers/WorkerPrivate.h
parent332c1c28ac6fdb66b6dc4ea6732d98be8d87749b (diff)
downloadUXP-c76e66fc3d8b2f86f4d406f0700149cc1f4719a5.tar
UXP-c76e66fc3d8b2f86f4d406f0700149cc1f4719a5.tar.gz
UXP-c76e66fc3d8b2f86f4d406f0700149cc1f4719a5.tar.lz
UXP-c76e66fc3d8b2f86f4d406f0700149cc1f4719a5.tar.xz
UXP-c76e66fc3d8b2f86f4d406f0700149cc1f4719a5.zip
1283712 - Part 8: Add WorkerErrorBase, WorkerErrorNote, and WorkerErrorReport.
Diffstat (limited to 'dom/workers/WorkerPrivate.h')
-rw-r--r--dom/workers/WorkerPrivate.h46
1 files changed, 40 insertions, 6 deletions
diff --git a/dom/workers/WorkerPrivate.h b/dom/workers/WorkerPrivate.h
index 20a530205..885abccd5 100644
--- a/dom/workers/WorkerPrivate.h
+++ b/dom/workers/WorkerPrivate.h
@@ -140,6 +140,45 @@ public:
}
};
+class WorkerErrorBase {
+public:
+ nsString mMessage;
+ nsString mFilename;
+ uint32_t mLineNumber;
+ uint32_t mColumnNumber;
+ uint32_t mErrorNumber;
+
+ WorkerErrorBase()
+ : mLineNumber(0),
+ mColumnNumber(0),
+ mErrorNumber(0)
+ { }
+
+ void AssignErrorBase(JSErrorBase* aReport);
+};
+
+class WorkerErrorNote : public WorkerErrorBase {
+public:
+ void AssignErrorNote(JSErrorNotes::Note* aNote);
+};
+
+class WorkerErrorReport : public WorkerErrorBase {
+public:
+ nsString mLine;
+ uint32_t mFlags;
+ JSExnType mExnType;
+ bool mMutedError;
+ nsTArray<WorkerErrorNote> mNotes;
+
+ WorkerErrorReport()
+ : mFlags(0),
+ mExnType(JSEXN_ERR),
+ mMutedError(false)
+ { }
+
+ void AssignErrorReport(JSErrorReport* aReport);
+};
+
template <class Derived>
class WorkerPrivateParent : public DOMEventTargetHelper
{
@@ -401,12 +440,7 @@ public:
void
BroadcastErrorToSharedWorkers(JSContext* aCx,
- const nsAString& aMessage,
- const nsAString& aFilename,
- const nsAString& aLine,
- uint32_t aLineNumber,
- uint32_t aColumnNumber,
- uint32_t aFlags,
+ const WorkerErrorReport* aReport,
bool aIsErrorEvent);
void