aboutsummaryrefslogtreecommitdiff
path: root/src/client/ios/BreakpadController.mm
Commit message (Collapse)AuthorAgeFilesLines
* [Breakpad iOS] Add a callback on report upload completion.Olivier Robin2019-04-231-7/+16
| | | | | | | | | | | | | This CL adds a result callback on report upload completion. On failure, Breakpad deletes the configuration file and does retry to upload a report. Using this callback, the client will be able to log some metrics and to act on upload failure. Bug: 954175 Change-Id: I95a3264b65d4c06ba5d8dde8377440d23f1e2081 Reviewed-on: https://chromium-review.googlesource.com/c/breakpad/breakpad/+/1572661 Reviewed-by: Mark Mentovai <mark@chromium.org>
* Adds method to get the date of the most recent iOS crash report.Evan Bernstein2018-10-081-0/+16
| | | | | | | | Also adds method to determine if breakpad is started. Change-Id: I272765e7ac6bbc07d77ca2d8dcc34d51c205116e Reviewed-on: https://chromium-review.googlesource.com/c/1260625 Reviewed-by: Joshua Peraza <jperaza@chromium.org>
* Reconcile -[BreakpadController withBreakpadRef:] with its documentation.Robert Sesek2017-12-151-3/+1
| | | | | | | | | | The header states that if the controller is not -start:'ed that it will call the block with a NULL BreakpadRef. As previously implemented, it asserted if it was not started. Change-Id: I3a329a773c0484dc1b74013717b68426758ea2cd Reviewed-on: https://chromium-review.googlesource.com/829834 Reviewed-by: Mark Mentovai <mark@chromium.org>
* There is no need to use the main queue just for perform selector.George Kola2017-02-131-34/+31
| | | | | | | | | | | | | | | | | | | | | | | | | We were using the main queue to queue up a perform selector and then the code [self sendStoredCrashReports] was immediately doing a dispatch_async. This unnecessary thread switching is not needed. We simplify the above logic and use dispatch_after to queue the block on the internal queue after a delay Note that main queue is typically more loaded and it is better for non-UI code to not use the main queue. This may also help improve crash log upload. This change also switches from @synchronized to dispatch_once as that is faster Reference: http://googlemac.blogspot.com/2006/10/synchronized-swimming.html BUG= Change-Id: I81035149cbbf13a3058ca3a11e6efd23980f19ad Reviewed-on: https://chromium-review.googlesource.com/441364 Reviewed-by: Joshua Peraza <jperaza@chromium.org>
* Adding possibility for client to upload the fileblundell@chromium.org2014-09-011-0/+31
| | | | | | | | | | | | | | | | | | This CL adds three features that will allow the client to upload the report file. Three main modifications are made : - Allow upload url to have a file:// scheme, and write the HTTP request to file in that case - Split the request in two parts in case of a file:// scheme, the request time and the response time. A new API [handleNetworkResponse] is added. - Give the opportunity to the client to get the configuration NSDictionary to be able to recreate the breakpad context at response time. Patch by Olivier Robin <olivierrobin@chromium.org> Review URL: https://breakpad.appspot.com/2764002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1368 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix a bug in BreakpadController that prevented multiple report uploads per ↵ivan.penkov@gmail.com2014-03-191-4/+8
| | | | | | | | | | | | call to sendStoredCrashReports. Submitting this patch on behalf of Asher Segel-Brown. R=blundell@chromium.org, mark@chromium.org, qsr@chromium.org Review URL: https://breakpad.appspot.com/1234002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1288 4c0a9323-5329-0410-9bdc-e9ce6186880e
* When the Breakpad.h header gets compiled by standard C compilersdmaclach2014-02-181-1/+2
| | | | | | | | | | (instead of C++) it gets upset about the default argument. Instead of using a default argument I split the function up into two separate functions. git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1280 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add -[BreakpadController setParametersToAddAtUploadTime:] for iOS.blundell@chromium.org2014-01-131-1/+10
| | | | | | | | | | | | | | This provides the ability to add server parameters to a crash report when the report is uploaded. Patch by KiYun Roe <kiyun@chromium.org> BUG=558 R=blundell@chromium.org Review URL: https://breakpad.appspot.com/974002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1271 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add -[BreakpadController resetConfiguration] for iOS.blundell@chromium.org2013-12-121-4/+11
| | | | | | | | | | | | | | Add a resetConfiguration method to BreakpadController for iOS. The new method resets the controller configuration to its initial value, which is the infoDictionary of the bundle of the application. Patch by KiYun Roe <kiyun@chromium.org> BUG=554 Review URL: https://breakpad.appspot.com/904002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1256 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Provide BreakpadGetCrashReportCount() and -[BreakpadControllermark@chromium.org2013-11-201-3/+11
| | | | | | | | | | | | | | | | getCrashReportCount:] This provides the ability for clients to query the number of crash reports that are waiting to upload. Patch by KiYun Roe <kiyun@chromium.org> BUG=547 Review URL: https://breakpad.appspot.com/714002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1234 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add API to find out if there is crash reports to send to the server.qsr@chromium.org2013-02-011-0/+7
| | | | | | Review URL: https://breakpad.appspot.com/518002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1109 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Move scoped_ptr.h to commonted.mielczarek@gmail.com2013-01-171-1/+1
| | | | | | R=mark at https://breakpad.appspot.com/509002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1096 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Fix typo.qsr@chromium.org2012-12-171-2/+2
| | | | | | Review URL: https://breakpad.appspot.com/506002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1093 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Updating BreakpadController to allow start and stop being nop.qsr@chromium.org2012-12-171-4/+5
| | | | | | | | When BreakpadController is already started or stopped, trying to restart it or restopping it will now be no-op instead of asserting. Review URL: https://breakpad.appspot.com/505002 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1092 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add assertion on initialization sequence.qsr@chromium.org2012-11-281-0/+20
| | | | | | | | | | | | The order at which to call the controller methods is: 1) Any method that change the configuration_ field 2) start 3) Any other method This change adds assertion that it is done correctly. Review URL: https://breakpad.appspot.com/499003 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1085 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Turn on more warnings in ios / mac projects.qsr@chromium.org2012-09-211-1/+1
| | | | | | | | | | | | | | | Make casts explicit. This makes casts that loose precision explicit, from here on we will get warnings. The changes in this commit are made without evaluating each cast, asuming the original casts were intentional. Patch by: jakerr@google.com Review: https://breakpad.appspot.com/453002/ git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@1046 4c0a9323-5329-0410-9bdc-e9ce6186880e
* Add high level API for breakpad on iOS.qsr@chromium.org2012-03-131-0/+266
The new API allows to automatically upload repports to the crash server when the application restarts. This change also: - Correct a bug on the test for correct alignment of the abrt signal handler - Add user friendly information on crashes for SIGABRT and NSException Review URL: https://breakpad.appspot.com/361001 git-svn-id: http://google-breakpad.googlecode.com/svn/trunk@935 4c0a9323-5329-0410-9bdc-e9ce6186880e