Dave had everyone in the class working on the Thunderbird Bug Fix Lab on Thursday.
The lab should give us first-hand experience in creating, fixing and submitting a patch.
The first thing I did was create an account on Mozilla’s fake Bugzilla. Then I filed a dummy bug.
When I went to file the bug, I got hit with a ton of form fields. I got a little confused, so I went over to the real Bugzilla to observe how others file their bugs. Dave mentioned at the start of the semester that people who are not developers often file bugs. If I wasn’t a programming student, I would have looked at those form fields and hit the back button. I ended up writing in a summary and description, leaving everything else blank or at its default. Now that I think about it, the description I wrote is pretty ugly.
When I tried to do a debug build of Thunderbird that night, I was met with an error:
|
|
Two Screen Shots. The first one is a warning I missed the first 2 times I ran Shredder (scrolls by too fast). The second one is of Shredder right before it died on me. Here’s that lovely error:
WARNING: NS_ENSURE_SUCCESS(rv, rv) failed with result 0x80040154: file c:/comm-central/mozilla/content/base/src/nsContentUtils.cpp, line 383
###!!! ASSERTION: Could not initialize nsContentUtils: 'Error', file c:/comm-central/mozilla/layout/build/nsLayoutStatics.cpp, line 168
and the only reason I typed that out is so Google can find it.
I probably should have started by searching Bugzilla, but habit sent me to Google. I wanted to find anyone who had encountered this bug. Maybe it’s because I was using nsContentUtils.cpp, nsLayoutStatics.cpp, and variations of the two in my search criteria. I was taken to Planet CDOT, where Jianming blogged about encountering the same error. I was still unable to find out how to fix the problem. Actually, I feel really lucky that I found Jianming’s blog. I bet there are others blogging about the same error. I also bet they posted screen shots of their errors. Google won’t find those posts for me.
I changed my approach by google-ing for a list of mozilla’s mailing lists. I wanted to search any Thunderbird-related mailing-list archives. I went through dev-apps-thunderbird, feedback-thunderbird, feedback-thunderbird-prerelease, and support-thunderbird. At the time, I didn’t find anything.
Actually, it’s been 4 days since I originally searched those Thunderbird mailing lists. As I was writing this post, and creating a link to dev-apps-thunderbird, I found this post by Mark Banner (Trunk Builds – current failures). It’s a nice surprise.
With no success in the mailing list archives, so I finally went after Bugzilla. Again, I couldn’t find anything.
I didn’t know where else to search, so I called it a night.
The next day, I went to check up on CDOT to see if Jianming had any luck with the error. Instead, Andor Salga’s “(Not) Building Minefield” came up. When his build wasn’t working, he checked Tinderbox. It was one more place to search, so I went with that. Turns out Thunderbird’s ‘WINNT 5.2 comm-central check %’ is burning. At least the problem isn’t me.
There’s a link right above the chart, leading to Bug 546913.
Turns out there was a bug filed regarding nsContentUtils.cpp and nsLayoutStatics.cpp. It was filed on the 18th (a week earlier). I guess I suck at searching. Mark Banner, the same guy who posted on dev-apps-thunderbird, is the one assigned to the bug. Best part is, I think he’s almost done with his fix. He had a patch that was waiting for review. When I checked Tinderbox again (today) I see that the trunk is building (1h and 5 minutes have elapsed).
For now, I’ve been reading zenit’s Real World Mozilla Incremental Build Lab and Andor’s post on Patches. Trying to figure out how to apply patches and what not. If the trunk turns green again, I’ll try applying Mark Banner’s patch myself. I’ll need the practice anyway.
For now, I’ll keep an eyeball on Tinderbox while I read up on patches. and ANTLR.
I haven’t given up on that.


