Index: chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadCallable.java |
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadCallable.java b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadCallable.java |
index d21a02a6553a98b47f7835c725a31586d9081a56..01b0aa10566e898bbd87ab90f66ad52d08a82095 100644 |
--- a/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadCallable.java |
+++ b/chrome/android/java/src/org/chromium/chrome/browser/crash/MinidumpUploadCallable.java |
@@ -56,13 +56,15 @@ public class MinidumpUploadCallable implements Callable<Integer> { |
UPLOAD_SUCCESS, |
UPLOAD_FAILURE, |
UPLOAD_USER_DISABLED, |
- UPLOAD_COMMANDLINE_DISABLED |
+ UPLOAD_COMMANDLINE_DISABLED, |
+ UPLOAD_DISABLED_BY_SAMPLING |
}) |
public @interface MinidumpUploadStatus {} |
public static final int UPLOAD_SUCCESS = 0; |
public static final int UPLOAD_FAILURE = 1; |
public static final int UPLOAD_USER_DISABLED = 2; |
public static final int UPLOAD_COMMANDLINE_DISABLED = 3; |
+ public static final int UPLOAD_DISABLED_BY_SAMPLING = 4; |
private final File mFileToUpload; |
private final File mLogfile; |
@@ -102,6 +104,13 @@ public class MinidumpUploadCallable implements Callable<Integer> { |
return UPLOAD_USER_DISABLED; |
} |
+ if (!mPermManager.isClientInMetricsSample()) { |
+ Log.i(TAG, "Minidump upload skipped due to sampling. Marking file as uploaded for " |
+ + "cleanup to prevent future uploads."); |
+ cleanupMinidumpFile(); |
+ return UPLOAD_DISABLED_BY_SAMPLING; |
+ } |
+ |
boolean isLimited = mPermManager.isUploadLimited(); |
if (isLimited || !mPermManager.isUploadPermitted()) { |
Log.i(TAG, "Minidump cannot currently be uploaded due to constraints."); |