summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJob Bautista <jobbautista9@protonmail.com>2022-07-30 13:24:40 +0800
committerJob Bautista <jobbautista9@protonmail.com>2022-07-30 13:24:40 +0800
commitfad8235ad2a02f3cd1cd50ec677377990642b47b (patch)
treefb3d74cd51928dd9c22a3f38669488d4f1a07ac3
parent32c8246e1615dcf1dbcf775141ee044def649ae7 (diff)
downloaduxp-fad8235ad2a02f3cd1cd50ec677377990642b47b.tar.gz
Issue #1980 - Fix build bustage for applications where WebRTC building is enabled.
Turns out we have a duplicate VoidFunction callback in the WebIDLs. Per Mozilla bug 1324169, we should remove this callback from RTCPeerConnection.webidl and let Function.webidl handle it instead. The AttributeError faced by the new Basilisk dev wasn't helpful at all; and turns out Mozilla had this exact same issue on bug 1505504. We're also backporting that just in case we encounter another case of callback duplication. Also doing a minor fix in the MicroTaskRunnable class which Moonchild forgot to do while working on Issue #1895.
-rw-r--r--dom/bindings/parser/WebIDL.py10
-rw-r--r--dom/webidl/RTCPeerConnection.webidl1
-rw-r--r--xpcom/base/CycleCollectedJSContext.h2
3 files changed, 9 insertions, 4 deletions
diff --git a/dom/bindings/parser/WebIDL.py b/dom/bindings/parser/WebIDL.py
index ce8862c02b..59db43f6bd 100644
--- a/dom/bindings/parser/WebIDL.py
+++ b/dom/bindings/parser/WebIDL.py
@@ -248,8 +248,14 @@ class IDLScope(IDLObject):
return self.QName()
def QName(self):
- if self._name:
- return self._name.QName() + "::"
+ # It's possible for us to be called before __init__ has been called, for
+ # the IDLObjectWithScope case. In that case, self._name won't be set yet.
+ if hasattr(self, "_name"):
+ name = self._name
+ else:
+ name = None
+ if name:
+ return name.QName() + "::"
return "::"
def ensureUnique(self, identifier, object):
diff --git a/dom/webidl/RTCPeerConnection.webidl b/dom/webidl/RTCPeerConnection.webidl
index 510957056f..6fb4194c36 100644
--- a/dom/webidl/RTCPeerConnection.webidl
+++ b/dom/webidl/RTCPeerConnection.webidl
@@ -9,7 +9,6 @@
callback RTCSessionDescriptionCallback = void (RTCSessionDescription sdp);
callback RTCPeerConnectionErrorCallback = void (DOMError error);
-callback VoidFunction = void ();
callback RTCStatsCallback = void (RTCStatsReport report);
enum RTCSignalingState {
diff --git a/xpcom/base/CycleCollectedJSContext.h b/xpcom/base/CycleCollectedJSContext.h
index 914bb95d30..366a1ea3bb 100644
--- a/xpcom/base/CycleCollectedJSContext.h
+++ b/xpcom/base/CycleCollectedJSContext.h
@@ -142,7 +142,7 @@ public:
virtual void Run(AutoSlowOperation& aAso) = 0;
virtual bool Suppressed() { return false; }
protected:
- virtual ~MicroTaskRunnable() {}
+ virtual ~MicroTaskRunnable() = default;
};
class CycleCollectedJSContext