Closed Bug 245722 Opened 20 years ago Closed 20 years ago

FF10PR1 crash on start after importing passwords [@ kernel32.dll - nsIEProfileMigrator::GetSignonsListFromPStore ]

Categories

(Firefox :: Migration, defect, P1)

x86
Windows XP
defect

Tracking

()

RESOLVED FIXED
Firefox1.0

People

(Reporter: eda2000, Assigned: bugs)

References

Details

(Keywords: crash, fixed-aviary1.0, topcrash+)

Crash Data

Attachments

(2 files, 1 obsolete file)

User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; cs-CZ; rv:1.8a2) Gecko/20040524 Firefox/0.8.0+ Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 5.1; cs-CZ; rv:1.8a2) Gecko/20040524 Firefox/0.8.0+ AppName: firefox.exe AppVer: 0.8.0.0 ModName: ntdll.dll ModVer: 5.1.2600.1217 Offset: 00033905 This said me windows. OS: XP prof. With all SP's and updates. Visual Studio Installed. IIS running. Reproducible: Sometimes Steps to Reproduce: 1. depack install 2. run the program for the first time 3. it is. Actual Results: App crashes and exit. Expected Results: Open start up page.
While I was starting the night version of mozzila, i was downloading by firebird 0.6 some files....If it can
Reporter: Can you provide the talkback id from the crash? Run [mozilla directory]\components\talkback.exe Or try looking here: http://talkback-public.mozilla.org/talkback/fastfind.jsp
Ondrej: Could you retest importing in Firefox 0.9?
Severity: normal → critical
Keywords: crash
My co-worker in another country (we talk using IM) (first time user of Firefox) reported this in 0.9.3. System is XP. Again Visual Studio is installed, and again there is error in ntdll.dll. From what I understand importer crash when importing passwords from IE. When selecting import options one-by-one importing works correctly. When only passwords are imported there is a crash. I am told that there is talkback just sent from this event with this bug number mentioned in the description. Hope that help.
TB685186: kernel32.dll + 0x13887 (0x77e73887) msvcrt.dll + 0x11a29 (0x77c21a29) _com_error::_com_error _com_issue_errorex nsIEProfileMigrator::GetSignonsListFromPStore [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/browser/components/migration/src/nsIEProfileMigrator.cpp, line 784] nsIEProfileMigrator::CopyPasswords [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/browser/components/migration/src/nsIEProfileMigrator.cpp, line 762] nsIEProfileMigrator::Migrate [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/browser/components/migration/src/nsIEProfileMigrator.cpp, line 449] XPTC_InvokeByIndex [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp, line 102] XPCWrappedNative::CallMethod [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp, line 2027] XPC_WN_CallMethod [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp, line 1287] js_Invoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 941] js_Interpret [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 2973] js_Invoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 958] js_InternalInvoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 1035] JS_CallFunctionValue [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsapi.c, line 3607] nsJSContext::CallEventHandler [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsJSEnvironment.cpp, line 1297] GlobalWindowImpl::RunTimeout [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp, line 5156] GlobalWindowImpl::TimerCallback [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp, line 5515] nsXULWindow::ShowModal [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsXULWindow.cpp, line 362] nsContentTreeOwner::ShowAsModal [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsContentTreeOwner.cpp, line 449] GlobalWindowImpl::OpenInternal [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp, line 4780] GlobalWindowImpl::OpenDialog [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsGlobalWindow.cpp, line 3474] XPTC_InvokeByIndex [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/xpcom/reflect/xptcall/src/md/win32/xptcinvoke.cpp, line 102] XPCWrappedNative::CallMethod [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednative.cpp, line 2027] XPC_WN_CallMethod [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/xpconnect/src/xpcwrappednativejsops.cpp, line 1287] js_Invoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 941] js_Interpret [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 2973] js_Invoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 958] js_InternalInvoke [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsinterp.c, line 1035] JS_CallFunctionValue [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/js/src/jsapi.c, line 3607] nsJSContext::CallEventHandler [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/base/nsJSEnvironment.cpp, line 1297] nsJSEventListener::HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/dom/src/events/nsJSEventListener.cpp, line 184] nsEventListenerManager::HandleEventSubType [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp, line 1434] nsEventListenerManager::HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/content/events/src/nsEventListenerManager.cpp, line 1512] nsXULElement::HandleDOMEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/content/xul/content/src/nsXULElement.cpp, line 2841] PresShell::HandleDOMEventWithTarget [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp, line 6116] nsMenuFrame::Execute [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/layout/xul/base/src/nsMenuFrame.cpp, line 1644] nsMenuFrame::HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/layout/xul/base/src/nsMenuFrame.cpp, line 443] PresShell::HandleEventInternal [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp, line 6080] PresShell::HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/layout/html/base/src/nsPresShell.cpp, line 5929] nsViewManager::HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp, line 2285] nsViewManager::DispatchEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/view/src/nsViewManager.cpp, line 2025] HandleEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/view/src/nsView.cpp, line 79] nsWindow::DispatchEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp, line 1067] nsWindow::DispatchMouseEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp, line 5261] ChildWindow::DispatchMouseEvent [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp, line 5511] nsWindow::WindowProc [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/widget/src/windows/nsWindow.cpp, line 1349] USER32.dll + 0x3a50 (0x77d43a50) USER32.dll + 0x3b1f (0x77d43b1f) USER32.dll + 0x3d79 (0x77d43d79) USER32.dll + 0x3ddf (0x77d43ddf) nsAppShellService::Run [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/xpfe/appshell/src/nsAppShellService.cpp, line 495] main [d:/builds/tinderbox/firefox-0.9.3/WINNT_5.0_Clobber/mozilla/browser/app/nsBrowserApp.cpp, line 58] kernel32.dll + 0x214c7 (0x77e814c7) comment: When trying to import from MS IE 6.0 I select all options and Firefox crashes. I could import 'Favorites' and 'Cookies' by importing one by one except the 'Password'.
Assignee: general → bugs
Component: Browser-General → Migration
Product: Browser → Firefox
QA Contact: general → firefox.migration
Summary: First start after importing setting and opening start up page crashes with : AppName: firefox.exe AppVer: 0.8.0.0 ModName: ntdll.dll ModVer: 5.1.2600.1217 Offset: 00033905 → First start after importing setting and opening start up page crashes [@ kernel32.dll - nsIEProfileMigrator::GetSignonsListFromPStore ]
Version: Trunk → unspecified
Has anyone been able to reproduce this with a recent nightly?
This is a topcrasher for Firefox 1.0 PR1. It seems very similar to bug 248215 and the underlying cause might even be related or the same. To see the latest Talkback data for this crash search for "nsIEProfileMigrator::GetSignonsListFromPStore" here: http://talkback-public.mozilla.org/reports/firefox/FF10PR1/smart-analysis.all
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: blocking-aviary1.0?
Keywords: topcrash+
Summary: First start after importing setting and opening start up page crashes [@ kernel32.dll - nsIEProfileMigrator::GetSignonsListFromPStore ] → FF10PR1 crash on start after importing passwords [@ kernel32.dll - nsIEProfileMigrator::GetSignonsListFromPStore ]
lots of opportunities to null check in that code.
Status: NEW → ASSIGNED
Flags: blocking-aviary1.0? → blocking-aviary1.0+
Priority: -- → P1
Target Milestone: --- → Firefox1.0
Attached patch patchSplinter Review
Lots of error checking, just in case.
br & trunk fixed.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
looks like it has been fixed on the branch, so could somebody please add the fixed-aviary1.0 keyword? (i know this is trivial but it would be useful for querying the overall number of remaining bugs)
Keywords: fixed-aviary1.0
I pretty sure this bug is not fixed. The error as reported by talkback is: "Microsoft C++ exception" It means that a C++ exception is thrown. the code executed from MS C++ header is: " inline HRESULT IPStore::EnumItems ( unsigned long Key, GUID * pItemType, GUID * pItemSubtype, unsigned long dwFlags, struct IEnumPStoreItems * * ppenum ) { HRESULT _hr = raw_EnumItems(Key, pItemType, pItemSubtype, dwFlags, ppenum); if (FAILED(_hr)) _com_issue_errorex(_hr, this, __uuidof(this)); return _hr; } " When the function fails _com_issue_errorex() is called and the exception comes in. Since Firefox doesn't use try/catch the process dies. That's the bug. I think that the patch as checked in is worthless. The right fix would be to call raw_EnumItems() instead of EnumItems() so Firefox could check the error result code. Additionally all of the code should be checked for similar pattern. (I also think that it is useless to check for NULL pointers when the method fails, checking hr for success should be enough)
Looking at the source code, I can see that raw_XXX method is used at some places, but not everywhere, for instance here: http://lxr.mozilla.org/aviarybranch/source/browser/components/migration/src/nsIEProfileMigrator.cpp#793 I guess that the developer has found that an exception could be thrown sometimes and the error code was needed instead. Reopening based on the above and my previous comment (I hope I do no wrong here).
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
It is against aviary branch I've tested the import of all IE data and verified that with this patch no exception can be thrown.
Attachment #160556 - Flags: superreview?(bugs)
Attachment #160556 - Flags: review?(bugs)
Comment on attachment 160556 [details] [diff] [review] don't throw C++ exception, use hr result code instead r+a=ben@mozilla.org
Attachment #160556 - Flags: superreview?(bugs)
Attachment #160556 - Flags: superreview+
Attachment #160556 - Flags: review?(bugs)
Attachment #160556 - Flags: review+
Attachment #160556 - Flags: approval-aviary+
sorry, I think it is a better patch It removes C++ exception by adding "raw_interfaces_only" keyword when importing pstorec.dll. No need to worry about this anymore in the future if other methods are called on these interfaces. It might even save a few code bytes (less source code generated by import).
Attachment #160556 - Attachment is obsolete: true
Attachment #161267 - Flags: superreview?(bugs)
Attachment #161267 - Flags: review?(bugs)
Comment on attachment 161267 [details] [diff] [review] modify import statement to remove C++ exceptions r+sr+a=ben@mozilla.org
Attachment #161267 - Flags: superreview?(bugs)
Attachment #161267 - Flags: superreview+
Attachment #161267 - Flags: review?(bugs)
Attachment #161267 - Flags: review+
Attachment #161267 - Flags: approval-aviary+
landed, br & trunk
Status: REOPENED → RESOLVED
Closed: 20 years ago20 years ago
Resolution: --- → FIXED
Keywords: fixed-aviary1.0
Hi, seeing this discusion, have some new inforamtions. Upgread to FF PR 1.0.... WinXP SP1 CZ + FF PR 1.0 EN - problem is out WinXP SP1 CZ + FF PR 1.0 CZ - problem is out WinXP SP2 CZ + FF PR 1.0 EN - problem is out WinXP SP2 CZ + FF PR 1.0 CZ - problem is out WinXP SP2 EN + FF PR 1.0 EN - problem is out WinXP SP2 EN + FF PR 1.0 CZ - problem is out All imported and ok, in my testing machine.... Ondrej Seda
*** Bug 254239 has been marked as a duplicate of this bug. ***
Crash Signature: [@ kernel32.dll - nsIEProfileMigrator::GetSignonsListFromPStore ]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: