Code: void AppListController::EnableAppList() {
   PrefService* local_state = g_browser_process->local_state();
  bool has_been_enabled = local_state->GetBoolean(
      apps::prefs::kAppLauncherHasBeenEnabled);
  if (!has_been_enabled) {
    local_state->SetBoolean(apps::prefs::kAppLauncherHasBeenEnabled, true);
    ShellIntegration::ShortcutLocations shortcut_locations;
    shortcut_locations.on_desktop = true;
    shortcut_locations.in_quick_launch_bar = true;
    shortcut_locations.in_applications_menu = true;
    BrowserDistribution* dist = BrowserDistribution::GetDistribution();
    shortcut_locations.applications_menu_subdir = dist->GetAppShortCutName();
    base::FilePath user_data_dir(
        g_browser_process->profile_manager()->user_data_dir());
    content::BrowserThread::PostTask(
        content::BrowserThread::FILE,
        FROM_HERE,
        base::Bind(&CreateAppListShortcuts,
                   user_data_dir, GetAppModelId(), shortcut_locations));
  }
 }

Vulnerability Type: DoS 
CWE ID: CWE-399
Summary: Use-after-free vulnerability in the SVG implementation in Google Chrome before 27.0.1453.110 allows remote attackers to cause a denial of service or possibly have unspecified other impact via unknown vectors.
Commit Message: Upgrade old app host to new app launcher on startup

This patch is a continuation of https://codereview.chromium.org/16805002/.

BUG=248825

Review URL: https://chromiumcodereview.appspot.com/17022015

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@209604 0039d316-1c4b-4281-b951-d872f2087c98