Closed Bug 446512 Opened 16 years ago Closed 16 years ago

Recent nightlies of Lightning cause NULL-pointer dereference crash in TB

Categories

(Calendar :: Provider: GData, defect)

defect
Not set
critical

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: benjamin.lerner, Assigned: Fallen)

Details

(Whiteboard: [gdata-0.5])

Attachments

(2 files)

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.0.1) Gecko/2008070208 Firefox/3.0.1
Build Identifier: TB version 2.0.0.16 build 1 (20080708), latest Lightning nightly, latest GData nightly

In the past few days, TB has updated itself to 2.0.0.16 build 1, and I updated Lightning and GData to the latest nightly.  Now, TB crashes within seconds of every boot -- Visual Studio tells me its a null-pointer dereference, but I don't have a stack trace for you...  I've tried disabling Lightning+GData, and disabling GData alone.  Both seem to prevent the crashes, though with GData disabled I get a bunch of warnings at boot up that each of my calendars will not be available.

This behavior was introduced somewhen between July 9th (when I previously updated) and July 19th (when I updated and noticed the crash); it's still present in the July 20th build.

Reproducible: Always

Steps to Reproduce:
1. Update Lightning and GData to the latest nightly
2. (I think) have some GData calendars, though I don't know if this is required
3. Wait a few seconds, maybe even a full minute...
Actual Results:  
Crash.

Expected Results:  
Not crash :)

I submitted a few Talkback reports, though I don't know how to tell you which reports they are... I'd be happy to reproduce the problem, if you give me a quick pointer on how to give you any helpful information
Hi, to collect the ID(s) of the crash report go to your Thunderbird program folder, e.g. C:\Program Files\Mozilla Thunderbird\extensions\talkback@mozilla.org\components and start the talkback.exe application. From the dialog you can copy the incident ID(s).
Ben, could you also try to find the first nightly this breaks with? i.e retest with the july 9th build, and then narrow in.

Daniel just confirmed this bug.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Flags: blocking-calendar0.9+
If it helps, there might be a little more info at:
http://forums.mozillazine.org/viewtopic.php?p=3899115#p3899115
The forum post suggests that the 2008071120 nightly works, which means the following checkins might have caused the crash. I'm assuming it has something to do with the timezone service.

http://tinyurl.com/gdata-crash

I personally wasn't able to reproduce, but I might be able to debug this with daniel.
Build 2008071020 seems to be stable, loading all my calendars and hasn't crashed yet.
Build 2008071120 crashes: I collected talkback id TB47947960H.  I can't seem to reproduce the crash, now... I may have caused this with a newer version and didn't update TB correctly.
Build 2008071403 hasn't crashed yet either...
Build 2008071421 crashes: talkback id TB47948407K.  When it crashes, I can't even get the error console open, it dies too fast

To be clear, I'm running the mozilla1.8 version of these, not trunk.  To force a crash, I reload all remote calendars.

Assuming 2008071403 is clear and -1421 is broken, the only checkin during that time is the custom timezone service checkin.
I got a couple of similar crash reports, e.g. talkback id TB48110029Q. They started after I updated both Lightning and GData from some late June builds. Going back to GData 2008071403 brings me back up and running. Thanks Ben for the detective work!
Philipp, it seems to be our google team calendar that's causing the crash on my system; if I disable it, all (including my other google/wcap/ics cals) works well:

<http://www.google.com/calendar/feeds/u7pke58sc91ksbm4h9pf9ofe8c%40group.calendar.google.com/public/basic>

Could you subscribe to it?
Attached patch Fix v1 β€” β€” Splinter Review
As assumed, this was caused by the timezone of calDateTime being nsnull in the place fixed in calUtils, which in turn was caused by the timezone Etc/GMT being received, which we don't support but Google passes.

Back to the gdataTimezoneService... :-) I made the calUtils function a bit more resilient to code errors. crashes are never good.
Assignee: nobody → philipp
Status: NEW → ASSIGNED
Attachment #332659 - Flags: review?(daniel.boelzle)
Comment on attachment 332659 [details] [diff] [review]
Fix v1

r=dbo
Attachment #332659 - Flags: review?(daniel.boelzle) → review+
I think it's a violation that a calDatetime object could have a null timezone set; all members should check that.
Attachment #332700 - Flags: review?(philipp)
Comment on attachment 332700 [details] [diff] [review]
[checked in] make timezone setter check argument

Looks good, r=philipp
Attachment #332700 - Flags: review?(philipp) → review+
Attachment #332700 - Attachment description: make timezone setter check argument → [checked in] make timezone setter check argument
Checked in on HEAD and MOZILLA_1_8_BRANCH

-> FIXED
Status: ASSIGNED → RESOLVED
Closed: 16 years ago
OS: Windows XP → All
Hardware: PC → All
Resolution: --- → FIXED
Whiteboard: [gdata-cvs]
Target Milestone: --- → 0.9
thanks!  I just installed Lightning 2008081121 & GData to match, and it works for me.
Marking VERIFIED per comment#13.
Status: RESOLVED → VERIFIED
Whiteboard: [gdata-cvs] → [gdata-0.5]
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: