crash at [@ CFDictionaryGetValue] in Safari profile migration code

RESOLVED FIXED

Status

()

Firefox
Migration
--
critical
RESOLVED FIXED
8 years ago
7 years ago

People

(Reporter: jtd, Assigned: Josh Aas)

Tracking

({crash})

Trunk
x86
Mac OS X
crash
Points:
---
Bug Flags:
blocking-firefox3.6 +

Firefox Tracking Flags

(status1.9.2 beta4-fixed, status1.9.1 .8-fixed)

Details

(crash signature)

Attachments

(2 attachments)

(Reporter)

Description

8 years ago
#86 in top mac crashers:

http://crash-stats.mozilla.com/report/list?product=Firefox&platform=mac&query_search=signature&query_type=exact&query=&date=&range_value=1&range_unit=weeks&do_query=1&signature=CFDictionaryGetValue

Stack crawl:

0 CoreFoundation CFDictionaryGetValue
1 libbrowsercomps.dylib GetDictionaryCStringValue browser/components/migration/src/nsSafariProfileMigrator.cpp:303
2 libbrowsercomps.dylib nsSafariProfileMigrator::GetSourceHomePageURL browser/components/migration/src/nsSafariProfileMigrator.cpp:1258
3 XUL NS_InvokeByIndex_P xpcom/reflect/xptcall/src/md/unix/xptcinvoke_unixish_x86.cpp:179
4 XUL XPCWrappedNative::CallMethod js/src/xpconnect/src/xpcwrappednative.cpp:2456
5 XUL XPC_WN_GetterSetter js/src/xpconnect/src/xpcprivate.h:2323
6 libmozjs.dylib js_Invoke js/src/jsinterp.cpp:1386
7 libmozjs.dylib js_InternalInvoke js/src/jsinterp.cpp:1447
8 libmozjs.dylib js_InternalGetOrSet js/src/jsinterp.cpp:1510

Possibly related to bug 371824.  Occurs in both 3.0.x code and 3.5.x code.
(Reporter)

Updated

8 years ago
Keywords: crash
(Assignee)

Updated

8 years ago
Assignee: nobody → joshmoz

Updated

8 years ago
Summary: crash at CFDictionaryGetValue in bookmark migration code → crash at [@ CFDictionaryGetValue] in bookmark migration code
(Assignee)

Comment 1

8 years ago
Created attachment 414117 [details] [diff] [review]
fix v1.0

I suspect this only happens for users that have never launched Safari in their account. I can reproduce this sometimes when I remove my Safari plist preferences and then do a Safari import. I cannot reproduce consistently, and I can only reproduce in the official opt-no-symbols Firefox 3.5.5 build.

I suspect this patch will fix the problem, we'll have to make sure by tracking crash reports. CFDictionaryGetValue will crash if you pass NULL or a bad pointer so this patch checks that. It also fixes some other potentially problematic code including uninitialized pointers.
Attachment #414117 - Flags: review?(mstange)
Comment on attachment 414117 [details] [diff] [review]
fix v1.0

Looks fine to me.
Attachment #414117 - Flags: review?(mstange) → review+
(Assignee)

Updated

8 years ago
Flags: blocking-firefox3.6?
(Assignee)

Updated

8 years ago
Flags: blocking1.9.0.16?
Attachment #414117 - Flags: approval1.9.2+
(Assignee)

Updated

8 years ago
Attachment #414117 - Flags: review?(dietrich)
(Assignee)

Comment 3

8 years ago
Dietrich, I need a Firefox/browser reviewer. If you can't do it please re-target to someone who can. Thanks.
Comment on attachment 414117 [details] [diff] [review]
fix v1.0

looks ok, r=me.
Attachment #414117 - Flags: review?(dietrich) → review+
(Assignee)

Updated

8 years ago
Summary: crash at [@ CFDictionaryGetValue] in bookmark migration code → crash at [@ CFDictionaryGetValue] in profile migration code
(Assignee)

Updated

8 years ago
Summary: crash at [@ CFDictionaryGetValue] in profile migration code → crash at [@ CFDictionaryGetValue] in Safari profile migration code
(Assignee)

Comment 5

8 years ago
pushed to mozilla-central

http://hg.mozilla.org/mozilla-central/rev/92c9e42e75e6
Status: NEW → RESOLVED
Last Resolved: 8 years ago
Resolution: --- → FIXED
1.9.0.16 is frozen, pushing blocking request to 1.9.0.17.
Flags: blocking1.9.0.16? → blocking1.9.0.17?
Flags: blocking-firefox3.6? → blocking-firefox3.6+
(Assignee)

Comment 7

8 years ago
pushed to mozilla-1.9.2

http://hg.mozilla.org/releases/mozilla-1.9.2/rev/d3dd5d4a97cc
status1.9.2: --- → final-fixed
(Assignee)

Updated

8 years ago
blocking1.9.1: --- → ?
Flags: blocking1.9.0.17?
(Assignee)

Updated

8 years ago
Attachment #414117 - Flags: approval1.9.1.7?
blocking1.9.1: ? → ---
status1.9.1: --- → wanted
Comment on attachment 414117 [details] [diff] [review]
fix v1.0

Approved for 1.9.1.8, a=dveditz for release-drivers
Attachment #414117 - Flags: approval1.9.1.8? → approval1.9.1.8+
(Assignee)

Comment 9

8 years ago
Created attachment 418968 [details] [diff] [review]
1.9.1 branch patch v1.0
(Assignee)

Comment 10

8 years ago
pushed to mozilla-1.9.1

http://hg.mozilla.org/releases/mozilla-1.9.1/rev/361f74ce4784
status1.9.1: wanted → .8-fixed
Crash Signature: [@ CFDictionaryGetValue]
You need to log in before you can comment on or make changes to this bug.