Closed Bug 25274 Opened 25 years ago Closed 25 years ago

[blocker][beta1]Unable to create/migrate profile - blocked from using seamonkey

Categories

(SeaMonkey :: Startup & Profiles, defect, P1)

x86
Windows NT
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: agracebush, Assigned: bugs)

Details

(Keywords: smoketest)

Steps to reproduce:
1. clean mozregistry.dat/users50
2. install build 2000012709 (win)
3. mozilla launches with createprofile wizard that is blank- press buttons and 
get error messages (see below) must cancel
4. try mozilla -installer (profile manager comes up blank, does not display any 
4.x profile for migration)
5. try mozilla -ProfileManager- same result as step 4
6. try mozilla -SelectProfile (workaround to bug 24911)- same result as step 4
---------------------------
error message from wizard when pressing next/finish buttons
pressing next button in createprofilewizard 

javascript error  type error prefix has no properties 
url chrome //global/content/widgetStateManager.js 
line 306 
  

pressing finish button 

*** in onfinish 
javascript error  type error 
wizardManager.wizardMap[wizardManager.currentPageTag] has no properties 
URL chrome://profile/content/createProfileWizard.js 
line no 85 

-----------------------------------------
error from ProfileManager
using mozilla -SelectProfile 
javascript error uncaught exception [exception...component returned failure 
code(0x80004005)ns_error_failure
[nsIStringBundle.GetStringFromName] nsresult: "0x80004005 (ns_error_failure) 
location JS frame ::
chrome://profile/content/profileManager.js :: SetUpOKCancelButtonMode line 225 
  

or SwitchProfileManagerMode  line 162 when trying to press manage profiles 
button
Severity: normal → blocker
I bet this is a dup of the bug I filed. 25272 for which I've added a patch.
I think I'm wrong about this. I misread this bug.  I don't think my fix will fix 
this.
Keywords: smoketest
the second error is related ti 25272 but the prefix error is one that 
intermittently comes and goes. It was originally related to brutal sharing, 
waterson fixed it, but it keeps busting. 
cc'ing waterson because he said he'd take a look. (thanks chris!) 
this works fine in a debug build that I pulled this morning. I'd bet 
dollars-to-donuts that this is a packager issue; i.e., somebody added new DTDs 
or something but forgot to tell the magical installer about it.
I see this in my commerical build that I pulled this afternoon.  Let me know if 
you want to come by and see it, waterson.
racham: could you verify that all the files that need to be there -are- there 
in the commercial build?
I see all the profile files present when compared the commercial build vs the 
today's build. Looking for other differences.
OK...I updated and my resources in the xpfe\global and profiles to see if I 
missed any files. The directory diffs doesnot show anything. My debug build 
(pulled around 10.30 am today) ended up showing a blank window for Create 
Profile wizard and subsequent JS errors. Then I update the putterman's patch in 
xpcom\io (nsLocalFileWin.cpp).
Clobbered xpcom and built it. Ran the browser...my create profile wizard shows 
up the contents and works fine.

We should try the result of putting optimized version of xpcom dlls and check 
the commercial build behavior.
I can update the win32 build and respin and see what happens.
With the debug build I have that worked fine for CreateProfileWizard, I tested 
mozilla -installer.

Here are the scenarios :

Have single 4x profile : Migrates without any problems and brings up the 
browser.

Have multiple 4x profiles : Ideally ProfileManager window listing all 
unmigrated profiles should show up. But the app throws an assertion and 
ultimately crashes. It seems to happening in the XUL backend code. Here is the 
stack trace. Adding hyatt to cc list.

Stack trace :
nsXULTreeElement::AddItemToSelectionInternal(nsIDOMXULElement * 0x00000000) line 
256 + 51 bytes
nsXULTreeElement::SelectItem(nsXULTreeElement * const 0x01f16918, 
nsIDOMXULElement * 0x00000000) line 172
XULTreeElementSelectItem(JSContext * 0x01d08960, JSObject * 0x00d96470, unsigned 
int 1, long * 0x00d45f48, long * 0x0012d650) line 277 + 24 bytes
js_Invoke(JSContext * 0x01d08960, unsigned int 1, unsigned int 0) line 666 + 26 
bytes
js_Interpret(JSContext * 0x01d08960, long * 0x0012decc) line 2262 + 15 bytes
js_Invoke(JSContext * 0x01d08960, unsigned int 0, unsigned int 0) line 682 + 13 
bytes
js_Interpret(JSContext * 0x01d08960, long * 0x0012e704) line 2262 + 15 bytes
js_Invoke(JSContext * 0x01d08960, unsigned int 0, unsigned int 0) line 682 + 13 
bytes
js_Interpret(JSContext * 0x01d08960, long * 0x0012ef3c) line 2262 + 15 bytes
js_Invoke(JSContext * 0x01d08960, unsigned int 1, unsigned int 2) line 682 + 13 
bytes
js_InternalInvoke(JSContext * 0x01d08960, JSObject * 0x00d08398, long 13906256, 
unsigned int 0, unsigned int 1, long * 0x0012f0c4, long * 0x0012f070) line 759 + 
19 bytes
JS_CallFunctionValue(JSContext * 0x01d08960, JSObject * 0x00d08398, long 
13906256, unsigned int 1, long * 0x0012f0c4, long * 0x0012f070) line 2771 + 31 
bytes
nsJSContext::CallEventHandler(nsJSContext * const 0x01d08af0, void * 0x00d08398, 
void * 0x00d43150, unsigned int 1, void * 0x0012f0c4, int * 0x0012f0c0) line 562 
+ 33 bytes
nsJSEventListener::HandleEvent(nsIDOMEvent * 0x01f03c84) line 128 + 57 bytes
nsEventListenerManager::HandleEventSubType(nsListenerStruct * 0x01e208f0, 
nsIDOMEvent * 0x01f03c84, unsigned int 1) line 680 + 19 bytes
nsEventListenerManager::HandleEvent(nsIPresContext * 0x00ca3510, nsEvent * 
0x0012fad8, nsIDOMEvent * * 0x0012f4c0, unsigned int 7, nsEventStatus * 
0x0012fb18) line 1231 + 31 bytes
GlobalWindowImpl::HandleDOMEvent(GlobalWindowImpl * const 0x01678dd4, 
nsIPresContext * 0x00ca3510, nsEvent * 0x0012fad8, nsIDOMEvent * * 0x0012f4c0, 
unsigned int 1, nsEventStatus * 0x0012fb18) line 3350
nsWebShell::OnEndDocumentLoad(nsWebShell * const 0x01596350, nsIDocumentLoader * 
0x01596160, nsIChannel * 0x01d02470, unsigned int 0) line 3141 + 34 bytes
nsDocLoaderImpl::FireOnEndDocumentLoad(nsDocLoaderImpl * 0x01596160, nsIChannel 
* 0x01d02470, unsigned int 0) line 834
nsDocLoaderImpl::DocLoaderIsEmpty(unsigned int 0) line 725
nsDocLoaderImpl::OnStopRequest(nsDocLoaderImpl * const 0x01596164, nsIChannel * 
0x01f03840, nsISupports * 0x00000000, unsigned int 0, const unsigned short * 
0x00000000) line 669
nsLoadGroup::RemoveChannel(nsLoadGroup * const 0x015965e0, nsIChannel * 
0x01f03840, nsISupports * 0x00000000, unsigned int 0, const unsigned short * 
0x00000000) line 535 + 42 bytes
nsFileChannel::OnStopRequest(nsFileChannel * const 0x01f03844, nsIChannel * 
0x01f03420, nsISupports * 0x00000000, unsigned int 0, const unsigned short * 
0x00000000) line 455
nsOnStopRequestEvent::HandleEvent(nsOnStopRequestEvent * const 0x01f05c90) line 
279
nsStreamListenerEvent::HandlePLEvent(PLEvent * 0x01f05c40) line 93 + 12 bytes
PL_HandleEvent(PLEvent * 0x01f05c40) line 526 + 10 bytes
PL_ProcessPendingEvents(PLEventQueue * 0x00c71160) line 487 + 9 bytes
_md_EventReceiverProc(HWND__ * 0x00cf04e2, unsigned int 49363, unsigned int 0, 
long 13046112) line 975 + 9 bytes
USER32! 77e71820()
00c71160()
It looks like you're trying to select a null item.  Have you examined the JS?

At any rate, this code shouldn't crash and needs to be patched, but there is 
still the question of why null is being passed in to the select handler.
Status: NEW → ASSIGNED
Ben,

Did you add code to select the current profile lately...
That could cause this problem. Because when it lists,
all unmigrated profiles...there is no current profile yet.
May be JS is trying to select null in the tree.

Priority: P3 → P1
Target Milestone: M14
racham says there are no more crashes
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
My feedback is on a debug build, after incorporating putterman's morning fix and 
ben's latest fix to profile selection.js. Did we spin a build after putterman's 
fix. If so, we can check it on commercial build itself.
 2000-01-27-16-M14/build
Status: RESOLVED → VERIFIED
Product: Browser → Seamonkey
You need to log in before you can comment on or make changes to this bug.