Thunderbird updating the WinXP registry unread mail counter?

Discussion of bugs in Mozilla Thunderbird
Post Reply
MsJaye
Posts: 2
Joined: August 24th, 2004, 3:13 am

Thunderbird updating the WinXP registry unread mail counter?

Post by MsJaye »

Hi there,

I'm using Thunderbird Version 0.7.3 (20040803) on Windows XP SP1.

I'm wondering whether Thunderbird is correctly updating the Windows XP registry keys underneath:

HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\UnreadMail

...such that Windows XP is kept aware of the current number of unread emails, and is thus my laptop is able to turn its email LED on or off as appropriate.

(Details on the above registry key can be found at:
http://support.microsoft.com/default.as ... -us;831403
http://support.microsoft.com/default.aspx?kbid=304148 )

Thunderbird seems to be misbehaving, in that it only changes the status of the Windows XP registry under that point on startup and (sometimes) on shutdown -- never during actual use. I can't, for instance, set an email message to "Unread" and have the registry reflect this -- I've been inspecting the registry values with regedit between such changes, and so am reasonably certain Thunderbird is doing something amiss.

I've tried setting the "mail.windows_xp_integration.unread_count_interval" preference to 30 seconds, instead of the default 300, but this makes no difference.

Any similar experiences, confirmations or denials? :)

Apart from this, of course, Thunderbird is great.

Thanks,
Jaye.
MsJaye
Posts: 2
Joined: August 24th, 2004, 3:13 am

Post by MsJaye »

Hi again,

I've now also installed Mozilla 1.7.2 on the same machine, and can confirm that it does, in fact, handle updating the Windows XP registry correctly for the unread mail count. This means that this is a bug local to Thunderbird, and as such, I had a bit of a poke around the source tree.

Alas, I'm not a C++ programmer, but the relevant file seems to be:

/mailnews/base/src/nsMessengerWinIntegration.cpp

...which contains four #ifdef MOZ_THUNDERBIRD sections, all of which seem to be to do with the process of building the application identifier string that gets written to the unread mail count section in the Windows XP registry.

A look at what Thunderbird leaves in the registry reveals:

Application;REG_SZ;"" -p -mail
MessageCount;REG_DWORD;0x00000000
Timestamp;REG_BINARY;f0 2d 06 cd 6d 8a c4 01

Now, call me crazy, but I don't think that the value that is being written to the "Application" key is getting correctly constructed. When Mozilla runs, you get something like this:

Application;REG_SZ;"C:\Program Files\mozilla.org\Mozilla\mozilla.exe" -p default -mail

Which seems more correct.

Could it be that since Thunderbird isn't building this application identifier string correctly in some parts of the code, the registry is only getting updated by parts of the code some of the time, and inconsistently?

Hope there's someone conversant with the source tree, and C++, reading this who can offer an opinion...

Thanks again,
Jaye.
Old Unghost
Posts: 0
Joined: December 31st, 1969, 5:00 pm
Location: Moscow, Russia

Post by Old Unghost »

Just file a bug in Bugzilla.
Joined: 21 Jun 2003
Post Reply