mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-18 15:55:36 +00:00
Bug 1648109 - Report GetActor exceptions directly to the JSContext, r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D82446
This commit is contained in:
parent
e65481e7fb
commit
54d298d667
@ -4261,13 +4261,13 @@ NS_IMETHODIMP ContentChild::GetChildID(uint64_t* aOut) {
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
NS_IMETHODIMP ContentChild::GetActor(const nsACString& aName,
|
||||
NS_IMETHODIMP ContentChild::GetActor(const nsACString& aName, JSContext* aCx,
|
||||
JSProcessActorChild** retval) {
|
||||
ErrorResult error;
|
||||
RefPtr<JSProcessActorChild> actor =
|
||||
JSActorManager::GetActor(aName, error).downcast<JSProcessActorChild>();
|
||||
if (error.Failed()) {
|
||||
return error.StealNSResult();
|
||||
if (error.MaybeSetPendingException(aCx)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
actor.forget(retval);
|
||||
return NS_OK;
|
||||
|
@ -6853,13 +6853,13 @@ IPCResult ContentParent::RecvRawMessage(const JSActorMessageMeta& aMeta,
|
||||
return IPC_OK();
|
||||
}
|
||||
|
||||
NS_IMETHODIMP ContentParent::GetActor(const nsACString& aName,
|
||||
NS_IMETHODIMP ContentParent::GetActor(const nsACString& aName, JSContext* aCx,
|
||||
JSProcessActorParent** retval) {
|
||||
ErrorResult error;
|
||||
RefPtr<JSProcessActorParent> actor =
|
||||
JSActorManager::GetActor(aName, error).downcast<JSProcessActorParent>();
|
||||
if (error.Failed()) {
|
||||
return error.StealNSResult();
|
||||
if (error.MaybeSetPendingException(aCx)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
actor.forget(retval);
|
||||
return NS_OK;
|
||||
|
@ -139,13 +139,13 @@ InProcessParent::GetOsPid(int32_t* aOsPid) {
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
InProcessParent::GetActor(const nsACString& aName,
|
||||
InProcessParent::GetActor(const nsACString& aName, JSContext* aCx,
|
||||
JSProcessActorParent** aActor) {
|
||||
ErrorResult error;
|
||||
RefPtr<JSProcessActorParent> actor =
|
||||
JSActorManager::GetActor(aName, error).downcast<JSProcessActorParent>();
|
||||
if (error.Failed()) {
|
||||
return error.StealNSResult();
|
||||
if (error.MaybeSetPendingException(aCx)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
actor.forget(aActor);
|
||||
return NS_OK;
|
||||
@ -188,13 +188,13 @@ InProcessChild::GetChildID(uint64_t* aChildID) {
|
||||
}
|
||||
|
||||
NS_IMETHODIMP
|
||||
InProcessChild::GetActor(const nsACString& aName,
|
||||
InProcessChild::GetActor(const nsACString& aName, JSContext* aCx,
|
||||
JSProcessActorChild** aActor) {
|
||||
ErrorResult error;
|
||||
RefPtr<JSProcessActorChild> actor =
|
||||
JSActorManager::GetActor(aName, error).downcast<JSProcessActorChild>();
|
||||
if (error.Failed()) {
|
||||
return error.StealNSResult();
|
||||
if (error.MaybeSetPendingException(aCx)) {
|
||||
return NS_ERROR_FAILURE;
|
||||
}
|
||||
actor.forget(aActor);
|
||||
return NS_OK;
|
||||
|
@ -33,7 +33,7 @@ interface nsIDOMProcessChild: nsISupports {
|
||||
/**
|
||||
* Lookup a JSProcessActorChild managed by this interface by name.
|
||||
*/
|
||||
JSProcessActorChild getActor(in ACString name);
|
||||
[implicit_jscontext] JSProcessActorChild getActor(in ACString name);
|
||||
|
||||
/** Can the actor still send messages? */
|
||||
[infallible] readonly attribute boolean canSend;
|
||||
|
@ -38,10 +38,10 @@ interface nsIDOMProcessParent: nsISupports {
|
||||
/**
|
||||
* Lookup a JSProcessActorParent managed by this interface by name.
|
||||
*/
|
||||
JSProcessActorParent getActor(in ACString name);
|
||||
[implicit_jscontext] JSProcessActorParent getActor(in ACString name);
|
||||
|
||||
/** Can the actor still send messages? */
|
||||
[infallible] readonly attribute boolean canSend;
|
||||
|
||||
[notxpcom, nostdcall] ContentParentPtr asContentParent();
|
||||
[notxpcom, nostdcall] ContentParentPtr AsContentParent();
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user