[XPCOM] Keep the JS context with the Service/Method objects, we
[browser-dbus-bridge.git] / xpcom-dbusservice / DBusSignal.cpp
index 6ec5b97..fa57679 100644 (file)
@@ -44,7 +44,8 @@ DBusSignal::DBusSignal(DBusService *aDBusService,
                        const nsACString& aInterface,
                        const nsACString& aSignal,
                        const nsACString& aSender,
-                       const nsACString& aObject) :
+                       const nsACString& aObject,
+                       JSContext *cx) :
     mDBusService(aDBusService),
     mBusType(aBusType),
     mInterface(aInterface),
@@ -53,7 +54,8 @@ DBusSignal::DBusSignal(DBusService *aDBusService,
     mObject(aObject),
     mCallback(0),
     mEnabled(PR_FALSE),
-    mFilterActive(PR_FALSE)
+    mFilterActive(PR_FALSE),
+    mJScx(cx)
 {
     BDBLOG(("DBusSignal::DBusSignal()\n"));
     BDBLOG(("  mBusType   : %d\n", mBusType));
@@ -162,6 +164,13 @@ DBusSignal::GetObjectPath(nsACString& aObject)
     return NS_OK;
 }
 
+NS_IMETHODIMP
+DBusSignal::GetJSContext(JSContext **aJSContext)
+{
+    *aJSContext = mJScx;
+    return NS_OK;
+}
+
 void
 DBusSignal::filterEnable()
 {