Open Bug 777974 Opened 12 years ago Updated 2 years ago

Consolidate logic for reporting errors without XPCOM loaded (`Output()` implemented in various places)

Categories

(Core :: General, defect)

All
Windows 7
defect

Tracking

()

People

(Reporter: TimAbraldes, Unassigned)

Details

Attachments

(1 file)

My Win8 VM is taking forever to sync elm, so I'll look at this for the next hour or so!
Assignee: nobody → tabraldes
Status: NEW → ASSIGNED
OS: All → Windows 7
Attached patch PatchSplinter Review
So far I've built and tested "browser" and "xulrunner" with this patch.  I still need to figure out how to test b2g, mobile xul, and AppRunner
While reviewing the port of bug 762310 to SeaMonkey, I found two more bugs related to Output(). I don't know whether you would like to try to fix them at the same time or whether I should file separate bugs.

The first is that some of the strings passed to Output() include a trailing newline and others don't. (This seems to be a simple fix.)

The second is that MOZ_WINCONSOLE is a Makefile variable, not a C++ #define.

(In reply to Tim Abraldes from comment #2)
> So far I've built and tested "browser" and "xulrunner" with this patch.  I
> still need to figure out how to test b2g, mobile xul, and AppRunner
To build confidence in your copy & paste skills, you might find it easier to test them out on Thunderbird and/or SeaMonkey.
(In reply to neil@parkwaycc.co.uk from comment #3)
> While reviewing the port of bug 762310 to SeaMonkey, I found two more bugs
> related to Output(). I don't know whether you would like to try to fix them
> at the same time or whether I should file separate bugs.

Sorry for the delayed response!  I've been head-down in Firefox for Metro work.  I don't think there's a need to file separate bugs; we can fix these issues here.  In all honesty though I'm probably not going to work on this patch until well into 2013.  If you know of someone willing to pick up this work, I'd be happy to relinquish ownership of the bug.

> The first is that some of the strings passed to Output() include a trailing
> newline and others don't. (This seems to be a simple fix.)

We'll probably want to update Output() to append a trailing newline in the non-Windows case and in the MOZ_WINCONSOLE case, then update all consumers to call Output() without a trailing newline.  That way the output will look correct in consoles and in the dialog box.

> The second is that MOZ_WINCONSOLE is a Makefile variable, not a C++ #define.

MOZ_WINCONSOLE is both a Makefile variable AND a preprocessor definition.  If you "export MOZ_WINCONSOLE=1" and then build in objdir/browser/app, you should notice that "-DMOZ_WINCONSOLE=1" appears in the arguments to cl.  The "/D" command line argument defines preprocessor definitions [1].

[1] http://msdn.microsoft.com/en-us/library/hhzbb5c8%28v=vs.100%29.aspx
It's been a year since I've looked at this. I'd like to think that someday I'll find the time to finish this up but it's time to clear it out of my dashboard.
Assignee: tabraldes → nobody
Status: ASSIGNED → NEW
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: