summaryrefslogtreecommitdiffstats
path: root/chrome/installer/util/google_update_constants.h
Commit message (Collapse)AuthorAgeFilesLines
* Add support for --critical-update-version to installer.grt@chromium.org2011-11-111-1/+1
| | | | | | | | | | | | | | | | The installer may now be given a --critical-update-version=W.X.Y.Z option on the command line. If this is present for an in-use update and the indicated version is newer than the in-use Chrome, a new "cpv" value is dropped in the registry alongside "opv" and "cmd" (the other state associated with an in-use update). Thanks to Finnur, Chrome will eventually notice that there's a pending critical update and do magical things to keep our users safe and secure. Go users! Other things I did while I was at it: - switched version string conversions from UTF8ToWide to ASCIIToWide since version numbers are always ASCII dotted numbers. - renamed the reg value from "CriticalUpdate" to "cpv" so it fits in nicely with the other cryptic values in the product's Clients key (a.k.a. Version key). BUG=103526,97665 TEST=Install version N, launch it with --check-for-update-interval=5, then install verison M>N with --critical-update-version=M. After a few seconds, Chrome should do something fantastic. Note that the alternate_version_generator can be used to create a newer versioned mini_installer from an existing one (just build it and run it). Review URL: http://codereview.chromium.org/8517012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@109620 0039d316-1c4b-4281-b951-d872f2087c98
* When critical updates have been installed and the user has been idle for ↵finnur@chromium.org2011-10-131-0/+1
| | | | | | | | | | quite some time, show a bubble anchored to the wrench menu with a countdown clock for auto-restarting. BUG=97665 TEST=The testing for this is a bit too long-windy to describe here. Contact me for details. Review URL: http://codereview.chromium.org/8142028 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105298 0039d316-1c4b-4281-b951-d872f2087c98
* Handle eulaaccepted and oeminstall mo betta for multi-install. During first ↵grt@chromium.org2011-07-121-0/+1
| | | | | | | | | | | | install, these values (deposited by Google Update) are now mirrored from the product-specific ClientState key into the binaries' key. When the EULA is accepted, the modification is written to both the product's and binaries' ClientStateMedium key. As a result, multi-install OEM installs will start updating only when the EULA is accepted (as desired) and the EVENT_INSTALL_OEM_FIRST_CHECK ping is sent for both the product and the binaries. BUG=88584 TEST=see bug R=robertshield@chromium.org Review URL: http://codereview.chromium.org/7346011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92234 0039d316-1c4b-4281-b951-d872f2087c98
* Add helper function to GoogleUpdateSettings to retrieve the reactivationrogerta@chromium.org2011-06-231-0/+1
| | | | | | | | | | | brand code from the registry. BUG=None TEST=no user visible change Review URL: http://codereview.chromium.org/7229018 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90269 0039d316-1c4b-4281-b951-d872f2087c98
* Remove Gears from Chrome.aa@chromium.org2011-03-111-4/+0
| | | | | | | | | | There are probably a few more bits and pieces that can be removed, but I think this is the majority of it. BUG=51934 Review URL: http://codereview.chromium.org/6576020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77888 0039d316-1c4b-4281-b951-d872f2087c98
* Add brand-code migration to the Chrome installer when creating the new ↵robertshield@chromium.org2011-03-061-0/+1
| | | | | | | | | | | | | | | | multi-install app guid. When upgrading a product from single to multi, the installer will now check if a Chrome install at that level (user/system) had a brand code, and if so it will copy the brand code to the ClientState key for the multi-install. Also, some yak de-hairing: alter InstallationState such that it can be queried for partial ProductStates for products that are in the process of being installed. This can be used to query e.g. the ap value and the brand code, but not the version (since a product won't have a version until its first install is complete). This removes the need to go and manually re-query the registry in a couple of places, makes the installer's actions based solely on the original InstallationState and generally removes some hackiness. BUG=61609 TEST=setup_unittests.exe, also when upgrading from single to multi, observe that brand codes are copied over. Review URL: http://codereview.chromium.org/6604010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@77089 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for the quick-enable-cf command to the installer. This encompases:grt@chromium.org2011-03-031-8/+15
| | | | | | | | | | | | | - Adding facilities for new-style Google Update commands (ProductCommand, ProductCommands) - Adding support to the validator to validate the quick-enable-cf command - Adding juju to the installation and uninstallation flows to put the command into place when installing/upgrading Chrome in multi-install mode when CF is either not installed or is in ready-mode, and making sure the command is not there when Chrome Frame is installed. BUG=none TEST=Install Chrome in multi-install mode and see if the Google Update version key for the binaries (app guid {4DC8B4CA-1BDA-483e-B5FA-D3C12E15B62D}) contains a key named "quick-enable-cf" that has a CommandLine value indicating setup.exe w/ --multi-install [ --system-level ] --quick-enable-cf, a SendsPings value of 1, and a WebAccessible value of 1. Then try the other variations, like install CF in ready-mode and make sure that quick-enable-cf is still there. Make sure that installing CF causes it to be removed, etc. Review URL: http://codereview.chromium.org/6588003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@76783 0039d316-1c4b-4281-b951-d872f2087c98
* Integrate the Ready Mode prompt with IE and Chrome Frame. In Ready Mode, ↵erikwright@chromium.org2011-01-121-1/+5
| | | | | | | | | | prompts are displayed when the user browses to GCF-enabled sites, allowing the user to permanently activate, permanently decline, or temporarily decline Chrome Frame. BUG=None TEST=chrome_frame_unittests --gtest_filter=Ready* && chrome_frame_unittests --gtest_filter=Infobar* && setup.exe --chrome-frame --ready-mode --multi-install --system--level --chrome Review URL: http://codereview.chromium.org/6040003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@71215 0039d316-1c4b-4281-b951-d872f2087c98
* Setting oopcrashes=1 during installhuanr@chromium.org2010-09-071-0/+1
| | | | | | | | | BUG=54506 TEST=mini_installer.exe Review URL: http://codereview.chromium.org/3329013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@58699 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-261-0/+1
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Using different Version environment variable for SxS.huanr@chromium.org2010-05-191-2/+0
| | | | | | | | | | | BUG=44474 TEST=mini_installer.exe --chrome-sxs. The first run should start regardless what is set for CHROME_VERSION. Review URL: http://codereview.chromium.org/2101006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47600 0039d316-1c4b-4281-b951-d872f2087c98
* r46025 reverted r46023 which caused a build break on chromeos.prasadt@chromium.org2010-04-301-4/+0
| | | | | | | | | | | | | | | This change reverts r46025 and fixes the build break which is just a one line change in chrome/browser/first_run_gtk.cc to move the definition of Upgrade::new_command_line_ to be inside a #if. Details on the change and code review feedback for the original CL can be found at http://codereview.chromium.org/1633021. BUG=40975 TEST=none Review URL: http://codereview.chromium.org/1691022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46103 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r46023: "Detect new instance of the browser when running in the ↵willchan@chromium.org2010-04-301-0/+4
| | | | | | | | | | background in persistent" Broke the build. Review URL: http://codereview.chromium.org/1718024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46025 0039d316-1c4b-4281-b951-d872f2087c98
* Detect new instance of the browser when running in the background in persistentprasadt@chromium.org2010-04-301-4/+0
| | | | | | | | | | | | | | | | | | mode, shutdown and restart the new instance. This is already done for Windows, this CL enables the functionality for Linux. We don't yet have a unit test for this. Local testing is done by: 1) Reducing the timer to 30 seconds. 2) Changing BrowserList::IsInPersistentMode to return true. 3) Setting BrowserProcessImpl::autoupdate_timer_ to 30 seconds interval. 4) Running "touch" command on chrome exe to pretend there is an update. BUG=40975 TEST=none Review URL: http://codereview.chromium.org/1633021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46023 0039d316-1c4b-4281-b951-d872f2087c98
* Additional changes to support Chrome / CF installation wrapped in an MSI:robertshield@chromium.org2010-04-281-0/+1
| | | | | | | | | | | | | | | Disables start menu uninstall shortcuts. Tweaks quoting of uninstall command to follow msi ca rules. Adds a ClientState registry entry to flag that this installation is managed by an MSI. Set said registry flag on first MSI install. BUG=19370 TEST=Install with generated MSI, upgrade, uninstall. Review URL: http://codereview.chromium.org/1525042 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45802 0039d316-1c4b-4281-b951-d872f2087c98
* Auto restart when update available while running in the background on windows.atwilson@chromium.org2010-04-091-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | Landing on behalf of dbelenko@google.com. This is a new version of the older patch. Main changes include: 1. Rebased to a never Git revision to make things easier to land. 2. Chrome will now preserve the command line switches except for those that are blacklisted. 3. Fixed a race condition that would cause the browser to think it didn't exit cleanly after it's been restarted. 4. Fixed minor nits and omissions (indentation, etc). This patch adds a timer which fires every 6 hours and checks whether the browser is in the "persistent" (background) mode, and whether there's an update pending restart. If both conditions are true, the browser is restarted with blacklisted command line keys and all loose values stripped. In order to restart the browser in the background mode, the --long-lived-extensions key is also added to the command line. This change is Windows-only, and it won't become fully functional until Drew (atwilson) checks in his work that enables Chrome to go into background. Additionally, this addresses an issue where a restarted browser might load its profile data before the previous browser process exited - we now load the profile data *after* trying to contact the other browser. This exposed a race condition in SessionRestoreUITest.RestoreAfterClosingTabbedBrowserWithAppAndLaunching, so we disabled that test and logged http://crbug.com/40946. BUG=40975,40946 Review URL: http://codereview.chromium.org/1618012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44121 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 43989 - This is a new version of the older patch. Main changes include:atwilson@chromium.org2010-04-091-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | 1. Rebased to a never Git revision to make things easier to land. 2. Chrome will now preserve the command line switches except for those that are blacklisted. 3. Fixed a race condition that would cause the browser to think it didn't exit cleanly after it's been restarted. 4. Fixed minor nits and omissions (indentation, etc). This patch adds a timer which fires every 6 hours and checks whether the browser is in the "persistent" (background) mode, and whether there's an update pending restart. If both conditions are true, the browser is restarted with blacklisted command line keys and all loose values stripped. In order to restart the browser in the background mode, the longlivedextensions key is also added to the command line. This change is Windowsonly, and it won't become fully functional until Drew (atwilson) checks in his work that enables Chrome to go into background. Review URL: http://codereview.chromium.org/1617001 TBR=atwilson@chromium.org Review URL: http://codereview.chromium.org/1517027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@44041 0039d316-1c4b-4281-b951-d872f2087c98
* This is a new version of the older patch. Main changes include:atwilson@chromium.org2010-04-081-0/+4
| | | | | | | | | | | | | | | | | | | | | | | 1. Rebased to a never Git revision to make things easier to land. 2. Chrome will now preserve the command line switches except for those that are blacklisted. 3. Fixed a race condition that would cause the browser to think it didn't exit cleanly after it's been restarted. 4. Fixed minor nits and omissions (indentation, etc). This patch adds a timer which fires every 6 hours and checks whether the browser is in the "persistent" (background) mode, and whether there's an update pending restart. If both conditions are true, the browser is restarted with blacklisted command line keys and all loose values stripped. In order to restart the browser in the background mode, the --long-lived-extensions key is also added to the command line. This change is Windows-only, and it won't become fully functional until Drew (atwilson) checks in his work that enables Chrome to go into background. Review URL: http://codereview.chromium.org/1617001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43989 0039d316-1c4b-4281-b951-d872f2087c98
* Adds a way to record the last run time in the GoogleUpdateSettings classcpu@chromium.org2010-01-201-0/+4
| | | | | | | | | | | | | | - to be used as a way to know how long ago chrome was started - windows only - enabled unit tests for GoogleUpdateSettings for windows. BUG=none TEST=unit test included Review URL: http://codereview.chromium.org/554017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36696 0039d316-1c4b-4281-b951-d872f2087c98
* We should not return the raw Google Update branch code if we fail to ↵finnur@chromium.org2010-01-081-0/+3
| | | | | | | | | | | | determine what branch we are on. We should just assume stable. We should also not add the branch code information to the version string, since it needs to be parsable by Version object. If we append the raw branch code, it might contain dots, which confuses the parsing done by the Version object. BUG=31772 TEST=Change your branch code to something like 3.0-dev or 2.0-dev-somerandomstring. Chrome should not crash when you open the About box. Review URL: http://codereview.chromium.org/523151 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35763 0039d316-1c4b-4281-b951-d872f2087c98
* Change id that identifies client in crash reports. Whenever metrics service ↵kuchhal@chromium.org2009-11-051-0/+1
| | | | | | | | | | | | | | | recording is enabled, it sets the client id for crash reporting. - On Windows this id gets stored in the registry so that we can read it pretty early regardless of the process type. If the id has not been generated (like in the case of first run) we initialize with empty string but the real id gets inserted once metrics service gets initialized. - On Linux we were creating a hash and storing it in 'Consent to Send Stats'. This change replaces that hash with the metrics id. Unlike before calling SetConsentToSendStats doesn't generate a new id, if an id already exists. - On Mac there was no id set. Now we use metrics id as guid for the browser process. For other process types a change is still required to pass that id as command line param to renderers/plugins (like Linux). BUG=23658 TEST=Cause a deliberate crash in Chrome renderer/browser/plugin and make sure the clientID reported to the crash server is the right GUID. Review URL: http://codereview.chromium.org/346007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31143 0039d316-1c4b-4281-b951-d872f2087c98
* Push the Omaha app guid into the browser distribution classes to remove ↵robertshield@chromium.org2009-11-051-1/+0
| | | | | | | | compile-time differences between Chrome Frame and Chrome. Review URL: http://codereview.chromium.org/361023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31073 0039d316-1c4b-4281-b951-d872f2087c98
* Finish the wiring of the inactive user toast experimentcpu@google.com2009-06-191-0/+1
| | | | | | | | | | | | | | - Adds read-write to the client key of google_update - Adds the logic to track experiment outcome - Some new geric exitc codes (non error codes) BUG= b/1484308 TEST= see the bug Review URL: http://codereview.chromium.org/132058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@18871 0039d316-1c4b-4281-b951-d872f2087c98
* Inform google_update that the user has acepted the EULAcpu@google.com2009-03-111-0/+6
| | | | | | | | | | - reg key lives in hklm but we can write it BUG=b/1594565 Review URL: http://codereview.chromium.org/43061 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11469 0039d316-1c4b-4281-b951-d872f2087c98
* NO CODE CHANGEdeanm@chromium.org2009-03-101-1/+0
| | | | | | | | | Normalize end of file newlines in chrome/. All files end in a single newline. Review URL: http://codereview.chromium.org/42015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@11331 0039d316-1c4b-4281-b951-d872f2087c98
* Change "client" parameter in RLZ ping to "referral" gwilson@google.com2008-12-051-1/+1
| | | | | | | | | | to match Omaha's changes. BUG=1520348 Review URL: http://codereview.chromium.org/12975 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6440 0039d316-1c4b-4281-b951-d872f2087c98
* Add client parameter to the RLZ pingcpu@google.com2008-11-261-0/+1
| | | | | | | | | | | | - Does nothing on regular chrome or chromium installs - up to google_update to put data in 'client' BUG=1503035 Review URL: http://codereview.chromium.org/12657 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6030 0039d316-1c4b-4281-b951-d872f2087c98
* * Need to read version from registry if relaunching browser.kuchhal@chromium.org2008-11-121-0/+2
| | | | | | | | BUG=4316 Review URL: http://codereview.chromium.org/10820 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5281 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the new mechanism we are going to use for handling Chromium updateskuchhal@chromium.org2008-11-071-0/+2
| | | | | | | | | | | | | | | | | | | | while it is in use. This should work for per user as well as system level installs (after some additional changes once Google Update changes are ready). The following scenarios should work now: - If Chromium is using two different profiles at the same time we do not switch chrome executables until all of them are closed. - The old version of Chromium can be run after a restart if the renaming of executables fails. - We will not use environment variable any more but we need to keep it until all the users get this change on their machines. - opv/rename registry keys and new_chrome.exe should always together. If one exist all three should exist because they are created and deleted as one atomic operation (as much as possible given laws of physics). BUG=1463346 Review URL: http://codereview.chromium.org/9436 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4949 0039d316-1c4b-4281-b951-d872f2087c98
* Consolidate same constant defined in three different places. No change in ↵kuchhal@chromium.org2008-10-311-7/+11
| | | | | | | | chrome.exe size. Review URL: http://codereview.chromium.org/8409 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@4284 0039d316-1c4b-4281-b951-d872f2087c98
* Use a more compact license header in source files.license.bot2008-08-241-28/+4
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@1287 0039d316-1c4b-4281-b951-d872f2087c98
* Add chrome to the repository.initial.commit2008-07-261-0/+52
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@15 0039d316-1c4b-4281-b951-d872f2087c98