Commit dde5413
feat(crashpad): consent-aware offline caching
Wires UploadsPaused alongside UploadsEnabled from the consent handler:
when consent is revoked and cache_keep or http_retry is enabled, pause
crashpad uploads so pending reports are retained rather than skipped to
completed. On consent transitions that re-enable uploads, call
RequestRetry() so the handler wakes immediately instead of waiting for
its next periodic scan.
The crashpad submodule bump pulls in the matching UploadsPaused setting
and RequestRetry IPC additions on the handler side.
An integration test exercises the full flow: a crash captured while
consent is revoked stays in crashpad's pending queue (no upload, not
moved to completed), and giving consent in a subsequent run drains the
pending report to the server.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>1 parent 34a6171 commit dde5413
3 files changed
Lines changed: 70 additions & 2 deletions
- client/crashpad_client.h+8
- client/crashpad_client_linux.cc+10
- client/crashpad_client_mac.cc+6
- client/crashpad_client_win.cc+7
- client/settings.cc+28
- client/settings.h+24
- handler/crash_report_upload_thread.cc+13
- handler/crash_report_upload_thread.h+9
- handler/linux/crash_report_exception_handler.cc+6
- handler/linux/crash_report_exception_handler.h+1
- handler/linux/exception_handler_server.cc+4
- handler/linux/exception_handler_server.h+4
- handler/mac/crash_report_exception_handler.cc+6
- handler/mac/crash_report_exception_handler.h+6-1
- handler/mac/exception_handler_server.cc+74-24
- handler/mac/exception_handler_server.h+14-4
- handler/win/crash_report_exception_handler.cc+6
- handler/win/crash_report_exception_handler.h+1
- util/CMakeLists.txt+2
- util/linux/exception_handler_client.cc+7
- util/linux/exception_handler_client.h+3
- util/linux/exception_handler_protocol.h+3
- util/mach/exception_handler_protocol.cc+79
- util/mach/exception_handler_protocol.h+80
- util/win/exception_handler_server.cc+8
- util/win/exception_handler_server.h+4
- util/win/registration_protocol_win_structs.h+4
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
153 | 153 | | |
154 | 154 | | |
155 | 155 | | |
156 | | - | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
157 | 169 | | |
158 | 170 | | |
159 | 171 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
866 | 866 | | |
867 | 867 | | |
868 | 868 | | |
| 869 | + | |
| 870 | + | |
| 871 | + | |
| 872 | + | |
| 873 | + | |
| 874 | + | |
| 875 | + | |
| 876 | + | |
| 877 | + | |
| 878 | + | |
| 879 | + | |
| 880 | + | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
| 884 | + | |
| 885 | + | |
| 886 | + | |
| 887 | + | |
| 888 | + | |
| 889 | + | |
| 890 | + | |
| 891 | + | |
| 892 | + | |
| 893 | + | |
| 894 | + | |
| 895 | + | |
| 896 | + | |
| 897 | + | |
| 898 | + | |
| 899 | + | |
| 900 | + | |
| 901 | + | |
| 902 | + | |
| 903 | + | |
| 904 | + | |
| 905 | + | |
| 906 | + | |
| 907 | + | |
| 908 | + | |
| 909 | + | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
869 | 925 | | |
870 | 926 | | |
871 | 927 | | |
| |||
0 commit comments