|
|
Created:
4 years, 3 months ago by gayane -on leave until 09-2017 Modified:
4 years, 3 months ago CC:
chromium-reviews Target Ref:
refs/pending/heads/master Project:
chromium Visibility:
Public. |
DescriptionShow not uploaded crashes for Android.
In order to allow on-demand crash report uploads for Android
users, first show not uploaded or skipped crash reports.
BUG=641628
Committed: https://crrev.com/2da657316ab4cd2144cac614dddbf78551d71a28
Cr-Commit-Position: refs/heads/master@{#417089}
Patch Set 1 #
Total comments: 22
Patch Set 2 #Patch Set 3 : change ANDROID_JAVA_UI to OS_ANDROID #Patch Set 4 : sync #
Total comments: 15
Patch Set 5 : . #
Total comments: 2
Patch Set 6 : rebase #Patch Set 7 : thestig's comments #Patch Set 8 : rebase #
Messages
Total messages: 38 (15 generated)
Description was changed from ========== Show not uploaded crashes for Android BUG=641628 ========== to ========== Show not uploaded crashes for Android. In order to allow on-demand crash report uploads for Android users, first show not uploaded or skipped crash reports. BUG=641628 ==========
gayane@chromium.org changed reviewers: + isherman@chromium.org
PTAL
Thanks, Gayane! https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list.cc:19: #if BUILDFLAG(ANDROID_JAVA_UI) Hmm, is an OS check not more appropriate? I'm not sure when one would choose OS_ANDROID vs. ANDROID_JAVA_UI. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:24: // This will load list of successfully uploaded logs. nit: s/will load list/will load the list https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:32: std::string pattern = "\\.dmp|\\.skipped"; Hmm, I think it should be appropriate to only scan for ".skipped" -- I *think* ".dmp" means the minidump hasn't been properly processed yet. Are you thinking of any cases that I might be overlooking? https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:37: base::File::Info info; nit: Could you please declare this closer to where it is used? https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:39: if (std::regex_search(file.value(), re)) { I think it would be simpler to just have a string search. Even if you keep both suffixes, I think two calls to find() are pretty simple and at least as efficient as a regex. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:39: if (std::regex_search(file.value(), re)) { nit: Mebbe reverse the condition and use a continue stmt to reduce the level of indentation? https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:45: // Id is the last part of the file name. nit: It might help to include a sample file name in this comment. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:45: // Id is the last part of the file name. nit: s/Id/ID https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:47: id = id.substr(id.find_last_of("-") + 1); nit: Is it worth adding a DCHECK to verify that "-" exists in the filename? https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:50: UploadList::UploadInfo upload("", base::Time(), id, info.creation_time, nit: Prefer std::string() to ""
Thanks for the review. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list.cc:19: #if BUILDFLAG(ANDROID_JAVA_UI) On 2016/09/01 20:49:31, Ilya Sherman wrote: > Hmm, is an OS check not more appropriate? I'm not sure when one would choose > OS_ANDROID vs. ANDROID_JAVA_UI. It's not exactly clear for me, but I have seen more of a ANDROID_JAVA_UI in recent changes and my understanding is that OS_ANDROID is wider and can include not mobile related code. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:24: // This will load list of successfully uploaded logs. On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: s/will load list/will load the list Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:32: std::string pattern = "\\.dmp|\\.skipped"; On 2016/09/01 20:49:31, Ilya Sherman wrote: > Hmm, I think it should be appropriate to only scan for ".skipped" -- I *think* > ".dmp" means the minidump hasn't been properly processed yet. Are you thinking > of any cases that I might be overlooking? I was thinking about the case when crash dump gets attempted but not uploaded successfully. The extension then is something like .dmp0.try1 https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:37: base::File::Info info; On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: Could you please declare this closer to where it is used? Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:39: if (std::regex_search(file.value(), re)) { On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: Mebbe reverse the condition and use a continue stmt to reduce the level of > indentation? Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:39: if (std::regex_search(file.value(), re)) { On 2016/09/01 20:49:31, Ilya Sherman wrote: > I think it would be simpler to just have a string search. Even if you keep both > suffixes, I think two calls to find() are pretty simple and at least as > efficient as a regex. Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:45: // Id is the last part of the file name. On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: s/Id/ID Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:45: // Id is the last part of the file name. On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: It might help to include a sample file name in this comment. Done. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:47: id = id.substr(id.find_last_of("-") + 1); On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: Is it worth adding a DCHECK to verify that "-" exists in the filename? I added a condition to just ignore files that will not have "-" https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:50: UploadList::UploadInfo upload("", base::Time(), id, info.creation_time, On 2016/09/01 20:49:31, Ilya Sherman wrote: > nit: Prefer std::string() to "" Done.
Thanks, Gayane! LGTM % the question about OS_ANDROID vs. ANDROID_JAVA_UI. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list.cc:19: #if BUILDFLAG(ANDROID_JAVA_UI) On 2016/09/01 22:17:58, gayane wrote: > On 2016/09/01 20:49:31, Ilya Sherman wrote: > > Hmm, is an OS check not more appropriate? I'm not sure when one would choose > > OS_ANDROID vs. ANDROID_JAVA_UI. > > It's not exactly clear for me, but I have seen more of a ANDROID_JAVA_UI in > recent changes and my understanding is that OS_ANDROID is wider and can include > not mobile related code. Okay. I think we should check with someone who's more familiar with the Android build system, as it's still not quite clear to me when it's appropriate to use one flag vs. the other. https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/1/chrome/browser/crash_upload... chrome/browser/crash_upload_list/crash_upload_list_android.cc:32: std::string pattern = "\\.dmp|\\.skipped"; On 2016/09/01 22:17:59, gayane wrote: > On 2016/09/01 20:49:31, Ilya Sherman wrote: > > Hmm, I think it should be appropriate to only scan for ".skipped" -- I *think* > > ".dmp" means the minidump hasn't been properly processed yet. Are you > thinking > > of any cases that I might be overlooking? > > I was thinking about the case when crash dump gets attempted but not uploaded > successfully. The extension then is something like .dmp0.try1 Ah, good call! Okay =)
gayane@chromium.org changed reviewers: + mark@chromium.org
mark@chromium.org: PTAL
LGTM
The CQ bit was checked by gayane@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from mark@chromium.org, isherman@chromium.org Link to the patchset: https://codereview.chromium.org/2301943003/#ps40001 (title: "change ANDROID_JAVA_UI to OS_ANDROID")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
Patchset #4 (id:60001) has been deleted
gayane@chromium.org changed reviewers: + thestig@chromium.org
thestig@chromium.org: PTAL for owners approval for chrome/browser/BUILD.gn
https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn File chrome/browser/BUILD.gn (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn... chrome/browser/BUILD.gn:2859: "crash_upload_list/crash_upload_list_android.cc", Isn't it possible to put all the files that ends with _android in the main list, and GN will filter them automatically?
https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:30: const std::string unsuccessful_uploads = ".dmp"; Can these be C strings? https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:36: if (file.value().find(unsuccessful_uploads) == std::string::npos && You actually want base::EndsWith() or file.Extension() != foo, right? https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:41: base::GetFileInfo(file, &info); And if this returns false? https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:43: // Crash reports can have multiple extensions. Can you given an example? Does Chrome Android name them foo.dmp.skipped? https://codereview.chromium.org/2301943003/diff/80001/components/upload_list/... File components/upload_list/upload_list.h (right): https://codereview.chromium.org/2301943003/diff/80001/components/upload_list/... components/upload_list/upload_list.h:98: const base::FilePath& upload_log_path(); Make the method const.
https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:36: if (file.value().find(unsuccessful_uploads) == std::string::npos && On 2016/09/02 21:35:18, Lei Zhang wrote: > You actually want base::EndsWith() or file.Extension() != foo, right? No, because crash report files have multiple extensions. A typical filename is "chromium-renderer-minidump-f297dbcba7a2d0bb.dmp0.try0".
https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:36: if (file.value().find(unsuccessful_uploads) == std::string::npos && On 2016/09/02 21:42:16, Ilya Sherman wrote: > On 2016/09/02 21:35:18, Lei Zhang wrote: > > You actually want base::EndsWith() or file.Extension() != foo, right? > > No, because crash report files have multiple extensions. A typical filename is > "chromium-renderer-minidump-f297dbcba7a2d0bb.dmp0.try0". I guess that answers my question below.
thanks for having a look thestig@ PTAL https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn File chrome/browser/BUILD.gn (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn... chrome/browser/BUILD.gn:2859: "crash_upload_list/crash_upload_list_android.cc", On 2016/09/02 21:29:20, Lei Zhang wrote: > Isn't it possible to put all the files that ends with _android in the main list, > and GN will filter them automatically? I am probably missing something, but I don't fully understand the suggestion. Currently there are files ending with _android which are added based on different conditions and only two added here. https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:30: const std::string unsuccessful_uploads = ".dmp"; On 2016/09/02 21:35:18, Lei Zhang wrote: > Can these be C strings? Done. https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:41: base::GetFileInfo(file, &info); On 2016/09/02 21:35:18, Lei Zhang wrote: > And if this returns false? Done. https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:43: // Crash reports can have multiple extensions. On 2016/09/02 21:35:18, Lei Zhang wrote: > Can you given an example? Does Chrome Android name them foo.dmp.skipped? It cannot be foo.dmp.skipped, but it can be foo.dmp.try0 or foo.skipped.try0 https://codereview.chromium.org/2301943003/diff/80001/components/upload_list/... File components/upload_list/upload_list.h (right): https://codereview.chromium.org/2301943003/diff/80001/components/upload_list/... components/upload_list/upload_list.h:98: const base::FilePath& upload_log_path(); On 2016/09/02 21:35:18, Lei Zhang wrote: > Make the method const. Done.
On 2016/09/07 15:18:49, gayane wrote: > thanks for having a look thestig@ PTAL > > https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn > File chrome/browser/BUILD.gn (right): > > https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/BUILD.gn... > chrome/browser/BUILD.gn:2859: "crash_upload_list/crash_upload_list_android.cc", > On 2016/09/02 21:29:20, Lei Zhang wrote: > > Isn't it possible to put all the files that ends with _android in the main > list, > > and GN will filter them automatically? > > I am probably missing something, but I don't fully understand the suggestion. > Currently there are files ending with _android which are added based on > different conditions and only two added here. As a concrete example, look near the top of chrome/browser/BUILD.gn in the first file list. There, all the browser_process_platform_part* are together. Somewhere GN has built-in rules to automatically exclude browser_process_platform_part_android.cc on non-Android, and only build browser_process_platform_part_mac.mm on Mac. There's no need to put some browser_process_platform_part* file in one list, and the browser_process_platform_part_android.cc / browser_process_platform_part_mac.mm in separate lists. We can probably do the same with crash_upload_list/crash_upload_list*.
https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:30: const std::string unsuccessful_uploads = ".dmp"; On 2016/09/07 15:18:49, gayane wrote: > On 2016/09/02 21:35:18, Lei Zhang wrote: > > Can these be C strings? > > Done. To be specific, const char foo[] = "foo"; With const char* foo = "foo"; one can then write: foo = nullptr. https://codereview.chromium.org/2301943003/diff/80001/chrome/browser/crash_up... chrome/browser/crash_upload_list/crash_upload_list_android.cc:43: // Crash reports can have multiple extensions. On 2016/09/07 15:18:49, gayane wrote: > On 2016/09/02 21:35:18, Lei Zhang wrote: > > Can you given an example? Does Chrome Android name them foo.dmp.skipped? > > It cannot be foo.dmp.skipped, but it can be foo.dmp.try0 or foo.skipped.try0 Rather than replying in the code review, can you add that as a comment in the code, so future readers of the code can have an idea of what kind of data this is being processed? https://codereview.chromium.org/2301943003/diff/100001/chrome/browser/crash_u... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/100001/chrome/browser/crash_u... chrome/browser/crash_upload_list/crash_upload_list_android.cc:43: creation_time = info.creation_time; But if GetFileInfo() fails, that likely means something is wrong with the file. Do you really want to create an entry in the user visible upload list with a timestamp of base::Time(0), whenever that is?
Thanks. All the comments addressed. https://codereview.chromium.org/2301943003/diff/100001/chrome/browser/crash_u... File chrome/browser/crash_upload_list/crash_upload_list_android.cc (right): https://codereview.chromium.org/2301943003/diff/100001/chrome/browser/crash_u... chrome/browser/crash_upload_list/crash_upload_list_android.cc:43: creation_time = info.creation_time; On 2016/09/07 19:31:50, Lei Zhang wrote: > But if GetFileInfo() fails, that likely means something is wrong with the file. > Do you really want to create an entry in the user visible upload list with a > timestamp of base::Time(0), whenever that is? Done.
lgtm, thanks.
The CQ bit was checked by gayane@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from mark@chromium.org, isherman@chromium.org Link to the patchset: https://codereview.chromium.org/2301943003/#ps140001 (title: "thestig's comments")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
The CQ bit was unchecked by commit-bot@chromium.org
Try jobs failed on following builders: android_arm64_dbg_recipe on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm6...) android_compile_dbg on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/android_comp...) linux_android_rel_ng on master.tryserver.chromium.android (JOB_FAILED, https://build.chromium.org/p/tryserver.chromium.android/builders/linux_androi...) cast_shell_linux on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/cast_shell_linu...) chromeos_amd64-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_amd64-...) chromeos_daisy_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_daisy_...) chromeos_x86-generic_chromium_compile_only_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromeos_x86-ge...) chromium_presubmit on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/chromium_presub...) linux_chromium_asan_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_ozone_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_chromeos_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_clobber_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_compile_dbg_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) linux_chromium_rel_ng on master.tryserver.chromium.linux (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.linux/builders/linux_chromium_...) mac_chromium_compile_dbg_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_comp...) mac_chromium_rel_ng on master.tryserver.chromium.mac (JOB_FAILED, http://build.chromium.org/p/tryserver.chromium.mac/builders/mac_chromium_rel_...)
The CQ bit was checked by gayane@chromium.org
The patchset sent to the CQ was uploaded after l-g-t-m from mark@chromium.org, thestig@chromium.org, isherman@chromium.org Link to the patchset: https://codereview.chromium.org/2301943003/#ps160001 (title: "rebase")
CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/v2/patch-status/codereview.chromium.or...
Message was sent while issue was closed.
Description was changed from ========== Show not uploaded crashes for Android. In order to allow on-demand crash report uploads for Android users, first show not uploaded or skipped crash reports. BUG=641628 ========== to ========== Show not uploaded crashes for Android. In order to allow on-demand crash report uploads for Android users, first show not uploaded or skipped crash reports. BUG=641628 ==========
Message was sent while issue was closed.
Committed patchset #8 (id:160001)
Message was sent while issue was closed.
Description was changed from ========== Show not uploaded crashes for Android. In order to allow on-demand crash report uploads for Android users, first show not uploaded or skipped crash reports. BUG=641628 ========== to ========== Show not uploaded crashes for Android. In order to allow on-demand crash report uploads for Android users, first show not uploaded or skipped crash reports. BUG=641628 Committed: https://crrev.com/2da657316ab4cd2144cac614dddbf78551d71a28 Cr-Commit-Position: refs/heads/master@{#417089} ==========
Message was sent while issue was closed.
Patchset 8 (id:??) landed as https://crrev.com/2da657316ab4cd2144cac614dddbf78551d71a28 Cr-Commit-Position: refs/heads/master@{#417089} |