Closed Bug 454549 Opened 16 years ago Closed 16 years ago

Unable to change SSL state, or server settings in new profiles

Categories

(Thunderbird :: Preferences, defect, P1)

defect

Tracking

(Not tracked)

VERIFIED FIXED
Thunderbird 3.0a3

People

(Reporter: gkw, Unassigned)

References

Details

(Whiteboard: [fixed by bug 441437 backout])

Fallen experienced this on the Linux nightlies, while I got it on a just-checked-out self-compiled debug build, on 10.5.4 Mac Leopard.

Go to Account Settings, then change an IMAP account to use SSL (instead of none, or TLS), then press OK. Nothing seems to happen, because if you re-enter the Account settings, the setting is still at "none".

Debug build shows:
ERROR: am-server.xul hasn't loaded yet! Not saving.

when pressing OK in the Account Settings window. A similar problem that occurred a long time ago is bug 375544.
Flags: blocking-thunderbird3?
Its enough to change the account settings page, actually:

* Change IMAP account to SSL or do any other change
* Click on Local Folders in the left pane
* Go back to the IMAP Server settings

Actual Result:

* "Never" is selected, the port is back to 143.
When I start up the account manager, I see:

Error in enabling/disabling server.TrashFolderPicker
JavaScript error: chrome://messenger/content/am-server.js, line 290: trashFolder is null

I'm currently redoing my builds to see if this could be fallout from bug 441437 and possibly even fixed by bug 454061.
(In reply to comment #2)
> I'm currently redoing my builds to see if this could be fallout from bug 441437
> and possibly even fixed by bug 454061.

This doesn't fix the bug.
I see the same problem on:
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.1b1pre) Gecko/20080910234416 Shredder/3.0b1pre

Started to show up after I deleted a pop account, and created an imap account with the same name. When I go to the account settings window I get the following assertions:

WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80004005: file c:/Projects/mozilla/mailnews/base/src/nsMsgAccoun
tManagerDS.cpp, line 778

WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file c:\project
s\mozilla\mozilla\layout\base\nsPresContext.h, line 988

* Call to xpconnect wrapped JSObject produced this error:  *
[Exception... "Not enough arguments [nsIMsgFolder.createSubfolder]"  nsresult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS
)"  location: "JS frame :: file:///c:/Projects/mozilla/objdir-i686-pc-mingw32/debug/mozilla/dist/bin/components/folderLo
okupService.js :: fls_getFolderById :: line 73"  data: no]
and this one:

JavaScript error: , line 0: uncaught exception: [Exception... "Not enough arguments [nsIMsgFolder.createSubfolder]"  nsr
esult: "0x80570001 (NS_ERROR_XPC_NOT_ENOUGH_ARGS)"  location: "JS frame :: file:///c:/Projects/mozilla/objdir-i686-pc-mi
ngw32/debug/mozilla/dist/bin/components/folderLookupService.js :: fls_getFolderById :: line 73"  data: no]
--DOMWINDOW == 12 (0676F15C) [serial = 27] [outer = 05BBB480] [url = chrome://messenger/content/am-main.xul]
(In reply to comment #4)
> WARNING: recurring into frame construction:
> 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file c:\project
> s\mozilla\mozilla\layout\base\nsPresContext.h, line 988
> 
This is known startup noise. See bug 335615.

Also, comment #5 seems to be duping comment #4. (the last line just means a DOMWINDOW is being released afaict)

More info about this bug is that it seems to occur only with newly created profiles by latest nightlies. I can change settings successfully on profiles created a few weeks ago. i.e. that "ERROR: am-server.xul hasn't loaded yet! Not saving." message doesn't show.
Flags: blocking-thunderbird3.0b1?
Severity: major → blocker
Flags: blocking-thunderbird3?
Flags: blocking-thunderbird3.0b1?
Flags: blocking-thunderbird3.0b1+
Flags: blocking-thunderbird3+
Priority: -- → P1
I didn't see this error, probably due to comment 6. The fix however does seem to be simple:

Change line 73 of folderLookupService.js:
parent.createSubfolder(aId.substring(aId.lastIndexOf('/') + 1, aId.length));
to:
parent.createSubfolder(aId.substring(aId.lastIndexOf('/') + 1, aId.length), null);

Can someone who sees this confirm that this works?
Summary: Unable to change SSL state, or server settings. → Unable to change SSL state, or server settings in new profiles
(In reply to comment #7)
> Change line 73 of folderLookupService.js:
> parent.createSubfolder(aId.substring(aId.lastIndexOf('/') + 1, aId.length));
> to:
> parent.createSubfolder(aId.substring(aId.lastIndexOf('/') + 1, aId.length),
> null);
> 
> Can someone who sees this confirm that this works?

Ok, thanks to davida's testing over IRC, I have some more information. This works partially, in that the error changes from createSubfolder not having enough arguments to createSubfolder failing with NS_MSG_ERROR_FOLDER_EXISTS, because we're trying to recreate the Inbox and Trash folders in IMAP, which is a no-no.

I don't know the correct resolution to this, could bienvenu or jminta comment?
Blocks: 441437
David Ascher and myself have both tried this on today's nightly and it is no longer an issue.

Therefore fixed by the backout of bug 441437, see bug 441437 comment 16.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 3.0b1
Verified fixed in today's nightly
Status: RESOLVED → VERIFIED
Whiteboard: [fixed by bug 441437 backout]
You need to log in before you can comment on or make changes to this bug.