Closed Bug 962988 Opened 11 years ago Closed 9 years ago

MobileMessage: B2G desktop OOP fails to open sms app

Categories

(Core :: DOM: Device Interfaces, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED WONTFIX

People

(Reporter: gwagner, Unassigned)

References

Details

Attachments

(1 file)

When turning OOP on for a debug b2g-desktop the sms app doesn't launch. [Parent 65174] WARNING: NS_ENSURE_TRUE(mContinueCallback) failed: file /Users/Gregor/code/src/dom/mobilemessage/src/ipc/SmsParent.cpp, line 813 IPDL protocol error: Handler for PMobileMessageCursor returned error code ###!!! [Parent][DispatchAsyncMessage] Error: Processing error: message was deserialized, but the handler returned false (indicating failure) Process 65174 stopped and restarted: thread 1 received signal: SIGCHLD ###!!! [Parent][MessageChannel] Error: Channel error: cannot send/recv
It seems like we return false to one of the IPC call. Which makes sense since the sms API needs RIL. So this patch just turn the API on behind a ifdef.
Before asking r? I actually need to test my theory :)
Since we're trying to turn on OOP now, we should get this fixed soon as we're running into this problem again.
Blocks: 914584
(In reply to Vivien Nicolas (:vingtetun) (:21) from comment #1) > Created attachment 8369422 [details] [diff] [review] > hide.sms.pref.behind.ril.ifdef.patch > > It seems like we return false to one of the IPC call. Which makes sense > since the sms API needs RIL. So this patch just turn the API on behind a > ifdef. Would this still mean Messages app can run on TBPL/Travis? Just that there's a lot of useful coverage there that I'm sure Julien would like to keep.
Kyle, can you test this patch?
Flags: needinfo?(kyle)
Well, in terms of messages app no longer crashing, yes, this seems to do the job. Unfortunately due to bug 993171 I can't really run it through integration tests to see if it fixes those.
Flags: needinfo?(kyle)
Comment on attachment 8369422 [details] [diff] [review] hide.sms.pref.behind.ril.ifdef.patch Review of attachment 8369422 [details] [diff] [review]: ----------------------------------------------------------------- Ok, I'm gonna go ahead and say no on this. Even if RIL isn't available, we shouldn't crash, and this patch all the functionality of the app, meaning it also breaks all the integration tests. We should be able to at least compose a message, even if we can't send it. I've done some poking around at what's causing it to crash in OOP, and it looks like we're being overly aggressive in our error handling on the parent side, making assumptions about the lifetime of the child that are incorrect, breaking the synchronicity of the ipdl protocol and causing the crash. There should be a better way to do this.
Attachment #8369422 - Flags: review-
Blocks: 1007918
This blocks us from enabling oop desktop tests. Vicamo, do you have cycles for this?
Flags: needinfo?(vyang)
Hi, we should not have mozMobileMessage on b2g-desktop at the first place per bug 916605 -- functions unsupported on a certain platforms should not be exposed by default. However, that's blocked by bug 859764. As a result, one should never ever need to turn on SMS OOP tests on b2g-desktop and sms app will never work on b2g-desktop unless it gets a backend. It seems Lissy have an idea about this in bug 989926.
Flags: needinfo?(vyang)
(In reply to Vicamo Yang [:vicamo][:vyang] from comment #10) > Hi, we should not have mozMobileMessage on b2g-desktop at the first place > per bug 916605 -- functions unsupported on a certain platforms should not be > exposed by default. However, that's blocked by bug 859764. As a result, > one should never ever need to turn on SMS OOP tests on b2g-desktop and sms > app will never work on b2g-desktop unless it gets a backend. It seems Lissy > have an idea about this in bug 989926. I agree that we shouldn't rely on a SMS backend on desktop. I care about a consistent behavior for in and out of process. We shouldn't be able to run the app in one scenario and kill it in the other scenario. Can we get a fix so we can show an empty SMS app for the OOP case as well?
(In reply to Gregor Wagner [:gwagner] from comment #11) > (In reply to Vicamo Yang [:vicamo][:vyang] from comment #10) > > Hi, we should not have mozMobileMessage on b2g-desktop at the first place > > per bug 916605 -- functions unsupported on a certain platforms should not be > > exposed by default. However, that's blocked by bug 859764. As a result, > > one should never ever need to turn on SMS OOP tests on b2g-desktop and sms > > app will never work on b2g-desktop unless it gets a backend. It seems Lissy > > have an idea about this in bug 989926. > > I agree that we shouldn't rely on a SMS backend on desktop. I care about a > consistent behavior for in and out of process. We shouldn't be able to run > the app in one scenario and kill it in the other scenario. > Can we get a fix so we can show an empty SMS app for the OOP case as well? Yes, so I've proposed a patch in bug 859764 to hide mozMobileMessage on unsupported platforms. It works in a similar way with patch proposed in comment 7. We're also working on bug 958782, move WebSMS to WebIDL, so that we can hide interface names as well as navigation attribute node.
As far as I'm aware, B2G desktop is dead in favor of Mulet. Closing this, reopen if I'm wrong.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: