Commit Graph

195 Commits

Author SHA1 Message Date
Nathan Froyd
14eeb930ab Bug 744444 - Part 3: delete CPP_PROG_LINK; r=ted 2012-04-12 16:58:11 -04:00
Nicholas Cameron
b056a47fa0 Bug 733892; block reverting to the null last chance expception handler. r=ehsan 2012-04-20 21:07:55 +12:00
Mike Hommey
d278e617c4 Bug 748739 - Link stdc++compat as a static library, and always link it when STDCXX_COMPAT is enabled. r=ted
--HG--
rename : build/stdc++compat.cpp => build/unix/stdc++compat/stdc++compat.cpp
2012-04-30 08:03:59 +02:00
Michael Wu
d7f0bfa25b ELFSIZE not defined on gonk-ics (bug 737190, r=gal). 2012-03-25 03:15:33 +02:00
Mike Hommey
bbafb50822 Bug 716544 - Avoid unexpectedly including toolkit/crashreporter/google-breakpad/src/common/memory.h. r=ted 2012-03-13 09:47:02 +01:00
Mike Hommey
7bf6b46bc7 Backout changesets 923a278f7ad5, 8f0164c90145, f5171db26f48, 7b590e1e392c and bd9a2f904e1f (bug 716544) because of Linux red 2012-03-13 10:29:26 +01:00
Mike Hommey
93b5ece40e Bug 716544 - Avoid unexpectedly including toolkit/crashreporter/google-breakpad/src/common/memory.h. r=ted 2012-03-13 09:47:02 +01:00
Mike Hommey
330db9b35e Bug 720704 - Avoid setting an alternative stack for signals if there is already one. r=ted 2012-02-16 09:00:53 +01:00
Steven Michaud
ec48e485cd Bug 721160 - Stop explicitly linking libcrypto on OS X. r=ted 2012-02-13 14:21:44 -06:00
Mike Hommey
818458fdc8 Bug 721321 - Fix sys_clone() on ARM to work reliably in Thumb-2. r=jbramley 2012-02-13 15:49:05 +01:00
Jim Blandy
d5d3b67398 Bug 714129: Breakpad DWARF: Add support for DWARF 4 attribute forms. r=ted
This patch allows Breakpad's DWARF reader to at least read or skip
attributes using the new forms defined in version 4 of the DWARF
specification, instead of crashing.

Attributes encoded using DW_FORM_flag_present, DW_FORM_sec_offset, and
DW_FORM_exprloc should work fine now. However, compilation units using
DW_FORM_ref_sig8 to refer to types in .debug_types will need further work
to support. (GCC 4.6.2 does not emit .debug_types sections.)

Specifically:

- dwarf2reader::DwarfForm gets new values.
- dwarf2reader::Dwarf2Handler and dwarf2reader::DIEHandler get new handler
  methods, named ProcessAttributeSignature, for DW_FORM_ref_sig8 attributes.
- dwarf2reader::CompilationUnit reads DW_FORM_ref_sig8 attributes, and
  passes them to ProcessAttributeSignature. It also gets support for
  DW_FORM_sec_offset, DW_FORM_exprloc, and DW_FORM_flag_present, using the
  existing appropriate ProcessAttribute* methods.
- dwarf2reader::DIEDispatcher passes through ProcessAttributeSignature
  attributes to its DIEHandler.
- Unit tests are updated.
2012-02-01 11:27:33 -08:00
Jim Blandy
8180361621 Bug 714129: Breakpad DWARF support: Remove extraneous breaks following returns in dwarf2reader.cc. r=ted 2012-02-01 11:27:33 -08:00
Jim Blandy
7aa8b52f3f Bug 714129: Add partial unit tests for dwarf2reader::CompilationUnit. r=ted
This is really incomplete --- it's just what's needed to get started
testing support for the DWARF 4 attribute forms.
2012-02-01 11:27:33 -08:00
Benjamin Smedberg
3c82e7f486 Bug 716638 - Annotate the size of a failed allocation due to OOM and submit it with the crash report, r=ted
--HG--
extra : rebase_source : 5b7d10cb2e117deabb89b75ec3f3b1a221b3c80b
2012-01-24 11:08:51 -05:00
Ted Mielczarek
d6db1bd0b7 Rename Breakpad's md5.c to md5.cc, wrap its functions in the google_breakpad namespace. no bug, r=mento at http://breakpad.appspot.com/322003/show
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/md5.c => toolkit/crashreporter/google-breakpad/src/common/md5.cc
2011-11-21 12:40:25 -05:00
Gregory Szorc
f9737cefa1 Bug 698248 - Remove unused FORCE_USE_PIC variable; r=khuey 2011-11-01 15:45:23 -07:00
Felix Fung
9bb0edf799 Bug 577266 - Correct misspellings in source code 2011-09-06 17:20:35 -07:00
Rafael Ávila de Espíndola
a8c970acc2 Bug 680277 - Debug builds should always be compiled with frame pointers. r=khuey.
This patch creates a new MOZ_FRAMEPTR_FLAGS variable that is used only to
control the frame pointer flags passed to the compiler. It also computes this
flag in a macro so that the toplevel configure and js/src/configure stay in
sync.
2011-09-03 13:36:18 -04:00
Ehsan Akhgari
20af295975 Keep changeset 7ee51f8ea940 backed out on the reverted tree 2011-09-02 09:06:23 -04:00
Ehsan Akhgari
a171549936 Revert to changeset e6fc4594c22e which was the last one to get a green Win7 tp run 2011-09-02 09:03:08 -04:00
Rafael Ávila de Espíndola
e281bb7586 revert 11247af82311, e3626f903f9f and 7ee51f8ea940.
CLOSED TREE
2011-09-01 22:01:56 -04:00
Rafael Ávila de Espíndola
1ee04b6cea Bug 680277 - Change another use of MOZ_OPTIMIZE_FLAGS to MOZ_FRAMEPTR_FLAGS. r=khuey. 2011-09-01 16:43:50 -04:00
Rafael Ávila de Espíndola
7188250a96 Bug 677641 - Fix c++0x initializer list error found by clang; r=ted
The first field in a MDLocationDescriptor is a u_int32_t, so change this cast to the correct type. This fixes an error newer clang versions find in c++ 0x mode.
See http://llvm.org/viewvc/llvm-project/?view=rev&revision=136181 for more
information.
2011-08-11 19:31:11 -04:00
Rafael Ávila de Espíndola
16b25f6187 Bug 677644: Fix c++0x initializer list error found by clang. (The process_id field is unsigned, so we need to cast it in c++0x.) r=ted 2011-08-11 11:15:08 -07:00
Mike Hommey
098183f48a Bug 677159 - Don't allow to include config/config.mk twice. r=khuey 2011-08-09 09:07:48 +02:00
Rafael Ávila de Espíndola
3c46ee73e5 b=675008 r=ted.mielczarek Fix builds that use ac_add_options --with-macos-sdk=/Developer/SDKs/MacOSX10.7.sdk ac_add_options --enable-macos-target=10.5 Before we were checking for the deployment target to decide if the ppc headers were available, but they are not in the 10.7 sdk, even if we are targeting 10.5. 2011-08-02 11:49:15 -04:00
Marco Bonardo
0dd7aa5da8 Merge mozilla-central and mozilla-inbound 2011-08-02 11:52:56 +02:00
Rafael Ávila de Espíndola
b5682064de bug 673789 - Fix Breakpad compilation on OS X 10.7 SDK by #ifdefing out PPC support when targeting 10.7. r=ted 2011-07-25 19:15:00 -04:00
Evan Shaw
114f8c6a2d bug 673072 - remove deprecated curl header curl/types.h from Breakpad includes. r=ted 2011-07-21 02:32:00 -04:00
Rafael Espindola
1e06946c84 b=674440, r=ted.mielczarek
Backport r819 from google-breakpad. This lets us build XUL without linking
libcrypto.dylib which is deprecated in 10.7.
2011-08-01 13:43:23 -04:00
Bill McCloskey
3381ade5a2 Bug 662646 - Avoid allocating memory in Windows crash handler (r=ted) 2011-07-08 14:43:16 -07:00
Bill McCloskey
f467a1aa00 Bug 662646 - Add API to register memory for inclusion in crash reports (r=ted) 2011-07-07 17:31:01 -07:00
Jacob Bramley
6d297c4c1a Bug 666918: Allow some routines to omit the frame pointer even with --enable-profiling. This will break call-graphs for these functions, but an --enable-profiling build won't work without it. [r=cjones] 2011-07-05 09:48:40 +01:00
Raymes Khoury
f6f5983096 Bug 537857 part 3 - Fix assert failure in dump_syms in some cases when the linker discarded symbols. r=ccountant,r=jimb 2011-06-28 08:25:49 +02:00
Alon Zakai
1089f5ea54 Bug 617115 - crashreporter fixes part. r=ted 2011-05-27 10:01:03 -07:00
Jason Duell
6651a096c6 Bug 534764. Allow separate NSPR logs if requested, in case of interleaving issues; r=mayhemer,wtc 2011-03-25 19:40:50 -04:00
Mike Hommey
3c47f2e08d Bug 637316 - Forgot replacement of memcmp with my_strncmp in part 2. r=me 2011-03-14 15:28:44 +01:00
Mike Hommey
abac84999e Bug 637316 part 2 - Merge adjacent mappings with the same name into one module in crash reporter. r=ted 2011-03-14 15:24:58 +01:00
Chris Jones
b9eea5ff65 Bug 633436: Work around an apparent gcc/gas quirk. r=vlad a=a 2011-02-16 16:43:30 -06:00
Ted Mielczarek
448825c6d2 bug 599301 - Make Breakpad include memory around instruction pointer in minidumps on older versions of Windows. r=mento, a=beltzner
--HG--
extra : rebase_source : c5fd538fdfb532eeed4c4265eb93a69bfac485aa
2011-01-28 11:57:08 -05:00
Rafael Ávila de Espíndola
79936aada6 Bug 623121 - Add constructor for CPPLanguage (which inherits from Language) to placate CLang; r=jimb a=bsmedberg
--HG--
extra : rebase_source : a3d601c4b67ac37cde6ebb02783510dcb04297b0
2011-01-21 14:11:35 -05:00
Rafael Ávila de Espíndola
345b6cc05f Bug 623119 - exception_raise_state exception_raise_state_identity have Duplicated parameter name thread_state_count; r=ted a=bsmedberg
--HG--
extra : rebase_source : 62bd5b0145dcb1cd9f3a8178c1ca66ab351f3eb8
2011-01-21 14:10:50 -05:00
Ted Mielczarek
6ed416f3ed Fix compiling some parts of Breakpad processor on Win32. Landing as part of bug 620974, reviewed and landed upstream. r=mento, a=testonly
--HG--
extra : rebase_source : b13c758010ab079f5f4d016b9041efec5338baa1
2011-01-12 14:13:53 -05:00
Ted Mielczarek
08157510ea bug 590961 - Allow generating minidumps from processes of differing CPU architecture. r=mento a=blocking-2.0 2010-12-16 17:56:27 -05:00
Ted Mielczarek
6978bec880 bug 589955 - Submit empty crash reports on Windows. r=mento, a=blocking2.0
--HG--
extra : rebase_source : e618f80046f7885a4a4d797579866c68d8c61a98
2010-12-15 11:34:55 -05:00
timeless@mozdev.org
a408fd8bb9 Bug 615534 warning: operation ++ on 'i' may be undefined as i is used again in an argument to CopyIndexAfterObject in MinidumpGenerator::WriteMemoryListStream. r+a=ted 2010-11-30 15:44:36 +00:00
Ted Mielczarek
510d0e68ed bug 605832 - small Breakpad fixes to allow writing minidumps from the CrashGenerationServer callback. r=cjones a=blocking-fennec 2010-11-24 09:15:02 -05:00
Kyle Huey
f99c028f87 Bug 611930: Annotate crash reports with LSP information. r=ted sr=rs a=b 2010-11-21 19:29:47 -05:00
Kyle Huey
59a85eb583 Backed out changeset c8a4b4ed9160. a=me 2010-11-21 14:18:32 -05:00
Kyle Huey
698f4a7090 Bug 611930: Annotate crash reports with LSP information. r=ted sr=rs a=b 2010-11-21 13:58:33 -05:00
Benjamin Smedberg
53205f2ce6 Bug 599475 - Fix crash reporting on MacOS 10.5 (Leopard) by making breakpad use it's internal implementation of MD5 instead of one randomly picked from libnss or libcrypto which isn't loading properly. r=ted a=blocking-beta8+ 2010-11-20 16:58:47 -05:00
Ted Mielczarek
d90870c931 bug 610970 - fix Linux minidump writer to ignore mappings that are wholly contained within mappings provided by the API, r=mwu a=blocking-fennec 2010-11-10 08:05:31 -05:00
Brad Lassey
f85e8b346c maemo bustage fix from android crash reporter push a=blocking-fennec 2010-10-20 23:13:35 -04:00
Brad Lassey
1099518c89 linux build bustage fix a=bustage-fix 2010-10-20 21:33:56 -04:00
Ted Mielczarek
23a9e742aa bug 603592 - Add an API for the Android embedding to use to provide info about shared libraries mapped into anonymous mappings. r=mwu a=blocking-fennec 2010-10-19 15:05:47 -04:00
Ted Mielczarek
c91de3bfd4 bug 603592 - add a breakpad api to add info about known modules. r=mwu a=blocking-fennec 2010-10-19 14:52:27 -04:00
Ted Mielczarek
4ec94afa77 bug 603592 - make a file_id host binary that can spit out a Breakpad file id. r=mwu a=blocking-fennec 2010-10-14 20:38:19 -04:00
Ted Mielczarek
cece4402f2 bug 595167 - Make Breakpad client libs work on Android. r=mwu a=blocking-fennec 2010-10-13 11:37:58 -04:00
Chris Coulson
e7f926d208 Bug 591331 - Allow Linux dumper to work on PTRACE-hardened kernels (Ubuntu 10.10). r=ted 2010-10-12 13:38:13 +02:00
Ted Mielczarek
a709ac9559 bug 536271 - Include the page containing EIP in the minidump on Linux and Mac. r=nealsid, a=blocking
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/linux/memory.h => toolkit/crashreporter/google-breakpad/src/common/memory.h
extra : rebase_source : 2eb0ad63cdfd995c63893e5a8fe7eaa3aac72434
2010-09-23 12:53:23 -04:00
Ted Mielczarek
c169279a76 bug 587747 - Implement writing of minidumps from hang detection on OS X. r=cjones a=blocking
--HG--
extra : rebase_source : fef081b5b0fae828ecc0c2678d83787778dfc70d
2010-08-27 09:32:45 -04:00
Ted Mielczarek
ca86c9c747 bug 573150 - crash reporter inadvertently sends IE cookies to crash submission URL. r=nealsid a=blocking
--HG--
extra : rebase_source : 601d7a4611e0eb27143b74ab4db0b346e092aa34
2010-08-27 09:32:45 -04:00
Ted Mielczarek
96bb87cd24 bug 559228 - Update Breakpad to r652 (mozilla build system changes). r=bsmedberg a=blocking
--HG--
extra : rebase_source : a3aeb2907f6102abd1628387beed004e242f9c3b
2010-08-16 15:05:09 -04:00
Ted Mielczarek
ad21a16471 bug 559228 - Update Breakpad to r652
--HG--
extra : rebase_source : bec760bf86aa27731fcced3bfea3dcfaf5213293
2010-08-16 15:05:08 -04:00
Jim Mathies
158363a9b9 Bug 577486. Load the RtlCaptureContext entry point manually so that we can still run on Windows 2000. (patch modified to review comments by tnikkel) r=ted a=blocking 2010-07-29 14:12:46 -05:00
Mark Finkle
8303a7473d Bug 578080 - HOST_CXXFLAGS broken on Maemo causing build bustage [r=dougt] 2010-07-12 15:48:26 -04:00
Ted Mielczarek
36fab2017d bug 567424 bustage fix for OS X x86-64 2010-07-07 17:20:50 -04:00
Ted Mielczarek
7f52e9bfd0 bug 567424 bustage fix 2010-07-07 16:12:45 -04:00
Ted Mielczarek
84e3dd7b08 bug 567424 bustage fix 2010-07-07 15:49:54 -04:00
Ted Mielczarek
8d40d0bd53 bug 567424 - sync to Breakpad revision 619 to pick up OS X symbol dumping changes (64-bit support + DWARF CFI support) - mozilla build system changes. r=mitch 2010-07-02 08:05:04 -04:00
Ted Mielczarek
62c53fae00 bug 567424 - sync to Breakpad revision 619 to pick up OS X symbol dumping changes (64-bit support + DWARF CFI support)
We still have a few local patches that have not yet been upstreamed, but they're all up in the Breakpad issue tracker now:
--
Bug 544936, part 1: Add the ability to generate a minidump of a child process at any time (linux). r=ted
Bug 555309, part 2: Allow a particular subprocess thread to be "blamed" in an OOP minidump. r=bsmedberg
Bug 555309, part 4: Insert an artificial exception stream into non-crash browser-side minidumps. r=bsmedberg
Bug 544936, part 2: Add the ability to generate a minidump of a child process at any time (windows). r=ted
Bug 555309, part 2: Allow a particular subprocess thread to be blamed in an OOP minidump. (windows bits) r=bsmedberg
Bug 555309, part 4: Insert an artificial exception stream into non-crash browser-side minidumps. r=bsmedberg (win32)

Windows changes: http://breakpad.appspot.com/115002/show
Linux changes: http://breakpad.appspot.com/123001/show
--
bug 557113 - sort out crash report certificate issues on Maemo. r=mfinkle,johnath

http://breakpad.appspot.com/121002/show
--
Plus one more I discovered while testing this patch on 64-bit OS X:

http://breakpad.appspot.com/124001/show

--HG--
extra : rebase_source : f0df7e87d26822884401b8cb1a5633c958e92c93
2010-06-30 10:30:12 -04:00
Benoit Jacob
ee5f0dc451 b=569836; Fix build on Fedora 13; r=ted.mielczarek 2010-06-07 10:28:55 -04:00
Benjamin Smedberg
86a58b9f68 Bug 563936 - Make google_breakpad::ClientInfo::UnregisterWaits handle pseudo-errors from UnregisterWait correctly if there is I/O pending at the time, r=doshimun a=mossop 2010-05-10 17:11:57 -04:00
Ted Mielczarek
019fb8dad6 bug 557113 - sort out crash report certificate issues on Maemo. r=mfinkle,johnath
--HG--
extra : rebase_source : 5bd378a2721eeef2cb3abc3b54e15429be7c2416
2010-04-09 16:52:04 -04:00
Ted Mielczarek
bc5cd1c71c bug 555674 - fix some bugs in the Breakpad Linux/ARM code. r=jimb
--HG--
extra : rebase_source : 65458f5d7b0a7243e7d2662bc6065c6576e00af0
2010-03-26 14:23:48 -04:00
Ted Mielczarek
947dce4abf bug 554021 - enable compiling Breakpad on Linux/ARM by default. r=jimb
--HG--
rename : toolkit/crashreporter/client/crashreporter_linux.cpp => toolkit/crashreporter/client/crashreporter_gtk_common.cpp
extra : rebase_source : a8a747f388c8d7bfe1abb5df1e74dfb61a723303
2010-03-26 14:23:48 -04:00
Chris Jones
7c959e67d7 Bug 551254: Allow reviewed+approved STL headers to be included through <foo>. (<algorithm> and <vector> are provisionally in the list because of their use in libpr0n, but need to be reviewed in followup bug 556700 and bug 556701). r=ehsan,ted,zwol 2010-04-02 12:58:11 -05:00
Chris Jones
996c23e86b Backed out changeset cec7b12eb5e3 2010-04-02 13:20:22 -05:00
Chris Jones
94e6bcfee2 Bug 551254: Allow reviewed+approved STL headers to be included through <foo>. (<algorithm> and <vector> are provisionally in the list because of their use in libpr0n, but need to be reviewed in followup bug 556700 and bug 556701). r=ehsan,ted,zwol 2010-04-02 12:58:11 -05:00
Chris Jones
77a1bed1cc Bug 555309, part 4: Insert an artificial exception stream into non-crash browser-side minidumps. r=bsmedberg 2010-03-30 19:24:48 -05:00
Chris Jones
7c77dc07ff Bug 555309, part 2: Allow a particular subprocess thread to be "blamed" in an OOP minidump. r=bsmedberg 2010-03-30 19:24:46 -05:00
Ted Mielczarek
258de257fd workaround bug 554854 by linking dump_syms statically. rs=bsmedberg
--HG--
extra : rebase_source : 5c136481da244f47956cd1db515c0068aafd5732
2010-03-25 09:16:19 -04:00
Chris Jones
6f5a8ed678 Bug 544936, part 2: Add the ability to generate a minidump of a child process at any time (windows). r=ted 2010-03-24 16:21:59 -05:00
Chris Jones
f3315fbfe8 Bug 544936, part 1: Add the ability to generate a minidump of a child process at any time (linux). r=ted 2010-03-24 16:21:58 -05:00
Ted Mielczarek
5cd1a1f641 bug 548113 bustage fix, remove extra semicolon 2010-03-20 12:46:48 -04:00
Ted Mielczarek
f9d890e8d0 bug 548113 bustage fix, remove trailing comma in enum list 2010-03-20 12:43:04 -04:00
Ted Mielczarek
3b29cff61c bug 548113 - Sync to Breakpad revision 554. Local Makefile changes. r=jimb
--HG--
extra : rebase_source : d0d8cb30bb0536530df9070ad8386534432b9b95
2010-03-17 11:57:25 -04:00
Ted Mielczarek
44e5ef614b bug 548113 - Sync to Breakpad revision 554
--HG--
extra : rebase_source : d2fec8ccdc5e042a806f257b2c80631373549b3b
2010-03-17 11:57:25 -04:00
Boris Zbarsky
2201fae60b Backed out changeset df90f0171ba7 (bug 543111)
--HG--
extra : rebase_source : 35dfbceff1bec0fda34c652723b5ef4b5d7edfdd
2010-02-09 14:33:19 -05:00
Boris Zbarsky
eb4402f04c Bug 543111. Make breakpad compile when cross-compiling with toolwhip. r=ted 2010-02-09 12:09:06 -05:00
Ted Mielczarek
bafdb917a4 Try to fix bug 535585 (random tests failing with xpcshell return code 1) by switching to the non-TerminateThread codepath provided by Breakpad 2010-01-29 07:18:14 -05:00
Benjamin Smedberg
c710c65fbd Change the exit code of the crashreporter TerminateThread in the hopes that this will help diagnose bug 535585. 2010-01-28 17:55:44 -05:00
Chris Jones
1ff9f0f215 bug 539552 - Forward-declare CrashGenerationServer from client_info.h. r=ted
--HG--
extra : transplant_source : %CC%A0%BF%3D%B7%0A%13%8D%F3%E9x%1B%14%F6US%E0%F6%BB%9B
2010-01-14 13:25:00 -05:00
Benjamin Smedberg
ba61a42882 Bug 539048 - Hacky temporary UI for sending plugin-process crash reports, r=ted
--HG--
extra : rebase_source : e66e568a174ba975c42006becb6397d55032c3e2
2010-01-11 15:13:12 -05:00
Chris Jones
e8012b2b92 Bug 516759: Use OOP crash reporting in Gecko. r=luser
--HG--
extra : rebase_source : 1949d23a5ce0c15c266d9e67e6a6be7d650a51df
2010-01-12 15:14:38 -06:00
Chris Jones
2aef5d8f98 Bug 516759: Implement Linux client/server for OOP minidump generation requests. r=luser
--HG--
extra : rebase_source : 51cafc94af98f10e6f94652262ce00a5d0c9db5a
2010-01-12 15:14:37 -06:00
Ginn Chen
49ab13420b Bug 527631 crashreporter failed to compile on Solaris r=ted.mielczarek 2010-01-13 17:03:30 +08:00
Ted Mielczarek
7fe14c4436 bug 514188 - sync to breakpad revision 463 to pick up Linux client rewrite (Mozilla changes). r=bsmedberg
--HG--
rename : toolkit/crashreporter/google-breakpad/src/common/mac/dwarf/Makefile.in => toolkit/crashreporter/google-breakpad/src/common/dwarf/Makefile.in
extra : rebase_source : 64c09b14945060aac4fa3a02a4281148e99d5097
2009-12-14 06:55:31 -05:00
Ted Mielczarek
036bc01d1d bug 514188 - sync to breakpad revision 463 to pick up Linux client rewrite. r=bsmedberg
--HG--
extra : rebase_source : a78ba9b0fed0033adefb3a36baf4fcf59e3e4b13
2009-12-14 06:55:28 -05:00
Ted Mielczarek
57f6ed3438 Backed out bug 514188 - sync to breakpad revision 437. The Linux update broke stuff badly (bug 535071) 2009-12-16 09:30:39 -05:00