aboutsummaryrefslogtreecommitdiff
path: root/src/client/windows/crash_generation
Commit message (Collapse)AuthorAgeFilesLines
* Fix Windows client ExceptionHandlerTest testsJon Turney2017-03-113-6/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | ExceptionHandlerTest.InvalidParameterMiniDumpTest and ExceptionHandlerTest.PureVirtualCallMiniDumpTest both also exercise a feature that if the MiniDumpWithFullMemory MINIDUMP_TYPE is used, both UUID.dmp and UUID-full.dmp files are written. This is currently broken, and requesting a minidump with MiniDumpWithFullMemory MINIDUMP_TYPE fails, as the file handle for the full dump is not set. Call GenerateFullDumpFile() if MiniDumpWithFullMemory is requested, to generate a filename for the full dump file and set the file handle. Currently GenerateFullDumpFile() also generates another UUID for the full dump filename, so also make the private method MinidumpGenerator::GenerateDumpFilePath() idempotent (so the same UUID is reused) (Note that calling Generate(|Full)DumpFile() more than once is not permitted, so there's no behaviour where this changed the UUID to preserve) BUG= Change-Id: I74304f38b398f53da1c24f368dedfba8463da9e5 Reviewed-on: https://chromium-review.googlesource.com/452978 Reviewed-by: Mike Frysinger <vapier@chromium.org>
* Fix Windows crash_generation_server for debug builds without -D_DEBUGTed Mielczarek2015-10-071-1/+1
| | | | | | | | | | | | Debug Gecko builds don't build with -D_DEBUG, so the ifdef in crash_generation_server doesn't work right. The MSDN documentation for assert says that it's enabled based on the absence of the NDEBUG define, so using that seems sensible. R=thestig@chromium.org BUG= Review URL: https://codereview.chromium.org/1398453002 .
* Fix -Wreorder warnings in the Windows code.wfh@chromium.org2015-07-103-14/+14
| | | | | | | | | | | | | | | | This makes the order of fields in constructor initializer lists match the order in which the fields are declared in (which is the order they're initialized in). No intended behavior change. This change was originally reviewed at https://codereview.chromium.org/1230923005/ BUG=chromium:505304 TBR=thakis@chromium.org Review URL: https://codereview.chromium.org/1234653002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1471 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix Windows client compilation on mingw.ted.mielczarek@gmail.com2014-11-033-4/+10
| | | | | | A=Jacek Caban <jacek@codeweavers.com>, R=ted at http://breakpad.appspot.com/548002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1399 4c0a9323-5329-0410-9bdc-e9ce6186880e
* The process uptime computation when the Windows out-of-process Crash Generationivanpe@chromium.org2014-10-151-2/+4
| | | | | | | | | | | | | | | | Server is used is done by subtracting the crashing process creation time from the current time when the crash is generated: uptime = now - process_creation_time There was a bug and instead of the process creation time the code was using the time when the process was registered with the Crash Generation Server. R=mark@chromium.org Review URL: https://breakpad.appspot.com/1744002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1391 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Moving directory 'build' one level up as it collides with a file named ↵ivan.penkov@gmail.com2014-04-101-1/+1
| | | | | | | | | | 'BUILD' which happens to be in that same location in the Google source depot. R=chrisha@chromium.org, mark@chromium.org Review URL: https://breakpad.appspot.com/1504002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1308 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Move build configuration to root of repository.chrisha@chromium.org2014-04-031-3/+2
| | | | | | | | | | | This is in preparation for creating GYP build files for each platform. BUG=https://code.google.com/p/google-breakpad/issues/detail?id=575 R=mark@chromium.org Review URL: https://breakpad.appspot.com/1414002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1304 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix crash in Windows CrashGenerationServer from r1274.thestig@chromium.org2014-03-191-1/+1
| | | | | | | | R=cdn@chromium.org, mark@chromium.org Review URL: https://breakpad.appspot.com/1254002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1289 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Refactor the Windows MinidumpGenerator interface to get rid of the overloads ↵cdn@chromium.org2014-01-174-248/+250
| | | | | | | | | | | | | | when generating dumps. All required params are now passed to the constructor and the various options are set through new methods. BUG=N/A TEST=Existing minidump generation tests R=mark@chromium.org Review URL: https://breakpad.appspot.com/1074002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1274 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Run svn propdel svn:executable on source code files.thestig@chromium.org2013-12-171-0/+0
| | | | | | Review URL: https://breakpad.appspot.com/934002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1263 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix error r1258.thestig@chromium.org2013-12-171-12/+14
| | | | | | | | | BUG=556 R=cdn@chromium.org, mark@chromium.org Review URL: https://breakpad.appspot.com/904004 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1262 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Expose the ability to supply additional user streams in the windows dump ↵cdn@chromium.org2013-12-122-5/+57
| | | | | | | | | | | generator. BUG=N/A R=mark@chromium.org Review URL: https://breakpad.appspot.com/894002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1258 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix Windows release build error due to unreferenced variables.thestig@chromium.org2013-12-091-22/+15
| | | | | | | | | BUG=544 R=mark@chromium.org Review URL: https://breakpad.appspot.com/874002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1249 4c0a9323-5329-0410-9bdc-e9ce6186880e
* add interface for WriteMinidump which allows the caller to supply file ↵cdn@chromium.org2013-06-062-21/+64
| | | | | | | | | | | | handles instead of paths where the minidumps should be written. BUG=N/A TEST=N/A R=ivan.penkov@gmail.com, mark@chromium.org Review URL: https://breakpad.appspot.com/602002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1191 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Submitting this on behalf of Xiaoling Bao.ivan.penkov@gmail.com2013-05-204-4/+17
| | | | | | | Make custom info population before dump generation as an optional operation. This is part of a security change to move the crash generation and upload out of Google updater process. Review URL: https://breakpad.appspot.com/586003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1186 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow option for efficient and safe opt out of in-proc dump generation for ↵ivan.penkov@gmail.com2013-04-231-0/+4
| | | | | | | | | | Windows breakpad clients. https://breakpad.appspot.com/549002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1157 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Use stdint types everywhereted.mielczarek@gmail.com2013-03-061-0/+1
| | | | | | R=mark at https://breakpad.appspot.com/535002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1121 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix remaining processor/scoped_ptr.h references for reals.thestig@chromium.org2013-01-221-1/+1
| | | | | | Review URL: https://breakpad.appspot.com/516003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1104 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix remaining processor/scoped_ptr.h references after r1096.thestig@chromium.org2013-01-223-3/+3
| | | | | | Review URL: https://breakpad.appspot.com/516002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1103 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Remove <(library) usage from gyp files.thestig@chromium.org2013-01-191-2/+2
| | | | | | | | | | BUG=chromium:111541 Patch by Thiago Farina <tfarina@chromium.org>. Original code review: https://breakpad.appspot.com/513002/ Review URL: https://breakpad.appspot.com/515002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1101 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix of a race condition during Crash Generation Server startupivan.penkov@gmail.com2012-09-071-3/+6
| | | | | | | | https://breakpad.appspot.com/445002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1031 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fixing a Windows compiler warning in ↵ivan.penkov@gmail.com2012-08-171-4/+4
| | | | | | | | | | src/client/windows/crash_generation/minidump_generator.cc http://breakpad.appspot.com/432002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1014 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fixing a race condition in the Crash Generation Server which has toivan.penkov@gmail.com2012-08-154-147/+179
| | | | | | | | | | | do with simultaneous handling of dump requests and client process termination events. http://breakpad.appspot.com/430002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1013 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Speculatively back out r984. See http://codereview.chromium.org/10805065/mark@chromium.org2012-07-255-75/+5
| | | | | | | | | | | and http://build.chromium.org/p/chromium/builders/NACL%20Tests%20%28x64%29/builds/34563 chrome src/native_client/tests/inbrowser_crash_test/crash_dump_tester.py says that the observed failures are a symptom of crash_service.exe itself crashing. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@999 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Back out r996, reinstating r985. That wasn't it.mark@chromium.org2012-07-242-0/+72
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@997 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Speculatively back out r985 because it may be causing crash_service problemsmark@chromium.org2012-07-242-72/+0
| | | | | | | | for Chrome. See http://codereview.chromium.org/10805065/ . I'll recommit this if it wasn't the problem. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@996 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix a Windows compiler warning with a cast:mark@chromium.org2012-07-231-1/+1
| | | | | | | | | | | minidump_generator.cc(423) : warning C4267: '=' : conversion from 'size_t' to 'ULONG', possible loss of data Patch by Robert Sesek <rsesek@chromium.org> Review URL: https://breakpad.appspot.com/420002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@994 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow the crash generation server to be initialized with a handle instead ↵ted.mielczarek2012-07-162-0/+72
| | | | | | | | of a pipe name A=bsmedberg R=ted at http://breakpad.appspot.com/406002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@985 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add the capability to include an arbitrary data stream within minidumpscdn@chromium.org2012-07-105-5/+75
| | | | | | | This is supplied via a custom field "custom-data-stream" Review URL: https://breakpad.appspot.com/408002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@984 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Do not fail crash dump generation if handle operations tracing is not enabledmark@chromium.org2012-07-031-1/+2
| | | | | | | | | | | | | and yet the fatal exception was STATUS_INVALID_HANDLE. BUG=131699 Patch by Alex Pakhunov <alexeypa@chromium.org> Review URL: https://breakpad.appspot.com/409003/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@980 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow the minidump writer to collect handle data so that resulting dump containsmark@chromium.org2012-07-031-13/+240
| | | | | | | | | | | | | | | | | | | | | information about opened handles (!handle) and handle operations trace (!htrace). Depending on the dump type different amount of data is collected. For a full dump all handles and complete handle trace are included to the dump. In the case of a minidump the list of handle operations for a single handle value (the last handle value that caused STATUS_INVALID_HANDLE exception) is recorded. In either case the handle trace should be explicitly enabled by the client process (or by a debugger) in order to produce any handle trace data. BUG=131699 Patch by Alex Pakhunov <alexeypa@chromium.org> Review URL: https://breakpad.appspot.com/410002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@979 4c0a9323-5329-0410-9bdc-e9ce6186880e
* CrashGenerationServer's state machine can be invoked from both the applicationmark@chromium.org2012-06-122-48/+56
| | | | | | | | | | | | | | | | thread and thread pool threads. This CL serializes access to the FSM state. Handling of crash dump and client shutdown requests is still done asynchronously. Patch by Alex Pakhunov <alexeypa@chromium.org> BUG=132164 TEST=remoting_unittests.BreakpadWinDeathTest.* Review URL: https://breakpad.appspot.com/396002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@970 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Initialize a CustomClientInfo variable. (Coverity)thestig@chromium.org2012-05-151-1/+1
| | | | | | Review URL: https://breakpad.appspot.com/390003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@967 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix warning in r961 - C4800jessicag.feedback2012-05-071-1/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@962 4c0a9323-5329-0410-9bdc-e9ce6186880e
* wires up the crash client side so that the deferred upload callback can be used.cdn@chromium.org2012-05-033-1/+23
| | | | | | | TEST=N/A Review URL: https://breakpad.appspot.com/384001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@961 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Set limit on the number of custom client info entries that can be sent with ↵cdn@chromium.org2012-04-171-0/+4
| | | | | | | | | | a crash dump. BUG=123709 TEST=N/A Review URL: https://breakpad.appspot.com/377004 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@953 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Expose a callback to allow crash server implementations to defer the ↵cdn@chromium.org2012-04-135-10/+45
| | | | | | | | | | uploading of crash dumps to a later time. The client can provide a crash_id when the dump is performed and then at a later time connect again and request that the crash id be uploaded triggering an implementation defined callback. BUG=473 TEST=CrashGenerationServerTest.* Review URL: https://breakpad.appspot.com/379001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@952 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Unregister waits when a client shuts down so that no further callback events cancdn@chromium.org2012-03-221-0/+1
| | | | | | | | | | fire for that client. BUG=117890 TEST=N/A Review URL: https://breakpad.appspot.com/365001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@936 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Speculative back-out of r883, which may have broken Windows crash reporting.mark@chromium.org2011-11-286-181/+2
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@891 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Allow CrashGenerationClient to request that a dump of the parent process be ↵ted.mielczarek2011-11-116-2/+181
| | | | | | | | written. A=Jim Mathies <jmathies@mozilla.com> R=ted at https://bugzilla.mozilla.org/show_bug.cgi?id=679238 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@883 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix svn:executable and svn:eol-style properties in src/client/windows.mark@chromium.org2011-10-201-0/+0
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@872 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix CrashGenerationServer to recover from protocol errors and a test for same.erikwright@chromium.org2010-09-202-74/+119
| | | | | | | R=siggi at http://breakpad.appspot.com/196001/show git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@695 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Issue 384 - UnregisterWait error handling is incorrect. Patch by Benjamin ↵ted.mielczarek2010-05-192-16/+6
| | | | | | Smedberg <benjamin@smedbergs.us>, r=doshimun at http://breakpad.appspot.com/107001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@603 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Moved exception_handler_test to the more aptly named ↵hansl@google.com2010-05-124-26/+54
| | | | | | | | | | | | | | | | exception_handler_death_test. It doesn't test anything else than death and exit. Created the exception_handler_test that test the generation of dump and the dumps themselves. Moved all dump analysis code from minidump to its right class DumpAnalysis. The class is used by both minidump_test and exception_handler_test. The tests are way simpler that way (ie. no handling of HANDLE). minidump_test now uses the minidump_generator class instead of using Win32. It works well and pass all tests. exception_handler now passes both the exception and assertion infos to the client to generate the dump. If one is NULL it's going to be handled correctly. crash_generation_client can now RequestDump with both exception and assertion info. minidump_generator returns both the mini and full dump string pointers, and output both (or either) depending on which was generated. All original interfaces and method signature are still there, but call the new functions if possible. Review URL: http://codereview.chromium.org/1994015 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@596 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Replacing solutions with gyp files. Moving tests for windows clients in ↵hansl@google.com2010-05-032-347/+64
| | | | | | | | unittests. Review URL: http://codereview.chromium.org/1687018 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@581 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Check RegisterWaitForSingleObject return in CrashGenerationServer::Start.mmentovai2009-09-281-6/+8
| | | | | | | | | Patch by Matt Mueller <mattm@chromium.org> Review URL: http://codereview.chromium.org/244028 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@402 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix an AppVerifier STOP in OOP server code. In the destructor ofdoshimun2009-01-162-1/+22
| | | | | | | | the OOP server, we need to wait for any pending I/O to be done. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@308 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix warning when converting int to boolnealsid2008-10-101-1/+1
| | | | git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@288 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Generate Windows full memory dumps as a separate file. Patch by Huan Renmmentovai2008-09-161-7/+56
| | | | | | | <huanr@google.com>. r=me git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@285 4c0a9323-5329-0410-9bdc-e9ce6186880e
* In the destructor of ClientInfo, currently the wait on the ↵doshimun2008-06-091-10/+10
| | | | | | | | | | | | | clent_crashed_event is unregistered after the handle is closed. MSDN clearly says that the behavior is undefined in this case. See http://msdn.microsoft.com/en-us/library/ms685061(VS.85).aspx This change contains the fix for that bug. See attched diff. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@281 4c0a9323-5329-0410-9bdc-e9ce6186880e