summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-03 21:36:28 +0000
committermark@chromium.org <mark@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-04-03 21:36:28 +0000
commit272709bbfce889973a8a16fc2e3000b23782736c (patch)
treee787fb000cc7a71adb372e1d9de3bcff3baa4e53
parentd1d067abf68561a23f8bdff954d90fbab73b420a (diff)
downloadchromium_src-272709bbfce889973a8a16fc2e3000b23782736c.zip
chromium_src-272709bbfce889973a8a16fc2e3000b23782736c.tar.gz
chromium_src-272709bbfce889973a8a16fc2e3000b23782736c.tar.bz2
Update KeystoneRegistration.framework to 1.2.0.7407.
The big change in this version is that an installation attempt initiated by the application can show up as ondemand on the server. This will allow us to provide throttled Mac downloads (such as a "5% push") with correct behavior. A previous registration framework, 1.2.0.6782, intended to fix this bug was backed out because it was not compatible with older installed Keystones. This version contains a fix for that problem. Previous commit: r245361, https://codereview.chromium.org/141193002 Backed out: r245603, https://codereview.chromium.org/141583005 BUG=35495 Review URL: https://codereview.chromium.org/212703006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@261532 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/mac/keystone_glue.mm6
-rw-r--r--chrome/browser/mac/keystone_glue_unittest.mm4
-rw-r--r--chrome/browser/mac/keystone_registration.h2
3 files changed, 8 insertions, 4 deletions
diff --git a/chrome/browser/mac/keystone_glue.mm b/chrome/browser/mac/keystone_glue.mm
index 959eac2..36d87cb 100644
--- a/chrome/browser/mac/keystone_glue.mm
+++ b/chrome/browser/mac/keystone_glue.mm
@@ -555,7 +555,11 @@ NSString* const kVersionKey = @"KSVersion";
[self updateStatus:kAutoupdateChecking version:nil];
- [registration_ checkForUpdate];
+ // All checks from inside Chrome are considered user-initiated, because they
+ // only happen following a user action, such as visiting the about page.
+ // Non-user-initiated checks are the periodic checks automatically made by
+ // Keystone, which don't come through this code path (or even this process).
+ [registration_ checkForUpdateWasUserInitiated:YES];
// Upon completion, ksr::KSRegistrationCheckForUpdateNotification will be
// posted, and -checkForUpdateComplete: will be called.
diff --git a/chrome/browser/mac/keystone_glue_unittest.mm b/chrome/browser/mac/keystone_glue_unittest.mm
index 5b9c2ca0..bf320db 100644
--- a/chrome/browser/mac/keystone_glue_unittest.mm
+++ b/chrome/browser/mac/keystone_glue_unittest.mm
@@ -38,7 +38,7 @@ namespace ksr = keystone_registration;
- (void)setActive {
}
-- (void)checkForUpdate {
+- (void)checkForUpdateWasUserInitiated:(BOOL)userInitiated {
}
- (void)startUpdate {
@@ -55,7 +55,7 @@ namespace ksr = keystone_registration;
// Send the notifications that a real KeystoneGlue object would send.
-- (void)checkForUpdate {
+- (void)checkForUpdateWasUserInitiated:(BOOL)userInitiated {
NSNumber* yesNumber = [NSNumber numberWithBool:YES];
NSString* statusKey = @"Status";
NSDictionary* dictionary = [NSDictionary dictionaryWithObject:yesNumber
diff --git a/chrome/browser/mac/keystone_registration.h b/chrome/browser/mac/keystone_registration.h
index 3ef981d..1354d2d 100644
--- a/chrome/browser/mac/keystone_registration.h
+++ b/chrome/browser/mac/keystone_registration.h
@@ -62,7 +62,7 @@ extern NSString* KSRegistrationRemoveExistingTag;
authorization:(AuthorizationRef)authorization;
- (void)setActive;
-- (void)checkForUpdate;
+- (void)checkForUpdateWasUserInitiated:(BOOL)userInitiated;
- (void)startUpdate;
- (keystone_registration::KSRegistrationTicketType)ticketType;