Closed Bug 585080 Opened 15 years ago Closed 15 years ago

Clicking on mailto: URI crashes the content process

Categories

(Firefox for Android Graveyard :: General, defect)

All
Android
defect
Not set
normal

Tracking

(fennec2.0a1+)

VERIFIED FIXED
Tracking Status
fennec 2.0a1+ ---

People

(Reporter: mbrubeck, Assigned: blassey)

Details

Attachments

(1 file, 1 obsolete file)

On Android, load any page with a mailto: link, e.g. http://bugzil.la/12345 and click the mailto: link. The content process crashes.
tracking-fennec: --- → ?
This works for me on build: Mozilla/5.0 (Android; U; Linux armv71; en-US; rv:2.0b4pre) Gecko/20100811 Namoroka/4.0b4pre Fennec/2.0a1pre
I can still reproduce this on the same nightly Android build (20100811).
Attached patch patch (obsolete) — Splinter Review
the crash you're seeing is due to use trying to use the bridge from the content process, this patch fixes that. Unfortunately I see another crash that happens after this that I haven't been able to figure out. With this patch you can launch the picker and the helper app, but then some time later (several seconds to a minute or two later) the browser will crash. I think we should take this patch as it is a better experience and file another bug for that second crash.
Attachment #464897 - Flags: review?(mwu)
Comment on attachment 464897 [details] [diff] [review] patch Looks ok. Just a bunch of formatting nits that should be fixed. > already_AddRefed<nsIMIMEInfo> > nsMIMEInfoAndroid::GetMimeInfoForMimeType(const nsACString& aMimeType) > { > mozilla::AndroidBridge* bridge = mozilla::AndroidBridge::Bridge(); >+ if (!bridge) >+ { >+ // we don't have access to the bridge, so just assume we can handle >+ // the protocol for now and let the system deal with it >+ return new nsMIMEInfoAndroid(aMimeType); >+ } >+ Wrong indentation level. { should be on the same line as the if. >@@ -91,6 +101,9 @@ nsMIMEInfoAndroid::GetMimeInfoForMimeTyp > already_AddRefed<nsIMIMEInfo> > nsMIMEInfoAndroid::GetMimeInfoForFileExt(const nsACString& aFileExt) > { >+ >+ if (!mozilla::AndroidBridge::Bridge()) >+ return nsnull; Remove the extra space at the top. >@@ -102,12 +115,22 @@ nsMIMEInfoAndroid::GetMimeInfoForProtoco > PRBool *found, > nsIHandlerInfo **info) > { >+ const nsString &empty = EmptyString(); >+ const nsCString &emptyC = EmptyCString(); > mozilla::AndroidBridge* bridge = mozilla::AndroidBridge::Bridge(); >+ if (!bridge) >+ { >+ // we don't have access to the bridge, so just assume we can handle >+ // the protocol for now and let the system deal with it >+ *found = PR_TRUE; >+ *info = new nsMIMEInfoAndroid(emptyC); >+ return NS_OK; >+ } >+ >+ { should be on the same line as if. Indentation is inconsistent.
Attachment #464897 - Flags: review?(mwu) → review+
Attached patch patchSplinter Review
Did a white space clean up for the whole file. Carrying the review.
Assignee: nobody → blassey.bugs
Attachment #464897 - Attachment is obsolete: true
Attachment #465136 - Flags: review+
tracking-fennec: ? → 2.0a1+
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
Verified fixed on: Mozilla/5.0 (Android;Linux armv7l;rv:9.0a1)Gecko/20110919 Firefox/9.0a1 Fennec/9.0a1 Device: HTC Desire OS: Android 2.2
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: