| Index: chrome/installer/setup/install_worker.cc
 | 
| ===================================================================
 | 
| --- chrome/installer/setup/install_worker.cc	(revision 77927)
 | 
| +++ chrome/installer/setup/install_worker.cc	(working copy)
 | 
| @@ -488,10 +488,20 @@
 | 
|    install_list->AddCreateDirWorkItem(temp_path);
 | 
|    install_list->AddCreateDirWorkItem(target_path);
 | 
|  
 | 
| +  if (current_version != NULL && current_version->get() != NULL) {
 | 
| +    // Delete the archive from an existing install to save some disk space.  We
 | 
| +    // make this an unconditional work item since there's no need to roll this
 | 
| +    // back; if installation fails we'll be moved to the "-full" channel anyway.
 | 
| +    FilePath old_installer_dir(
 | 
| +        installer_state.GetInstallerDirectory(**current_version));
 | 
| +    FilePath old_archive(old_installer_dir.Append(archive_path.BaseName()));
 | 
| +    install_list->AddDeleteTreeWorkItem(old_archive, temp_path)
 | 
| +        ->set_ignore_failure(true);
 | 
| +  }
 | 
| +
 | 
|    // Delete any new_chrome.exe if present (we will end up creating a new one
 | 
|    // if required) and then copy chrome.exe
 | 
| -  FilePath new_chrome_exe(
 | 
| -      target_path.Append(installer::kChromeNewExe));
 | 
| +  FilePath new_chrome_exe(target_path.Append(installer::kChromeNewExe));
 | 
|  
 | 
|    install_list->AddDeleteTreeWorkItem(new_chrome_exe, temp_path);
 | 
|    install_list->AddCopyTreeWorkItem(
 | 
| 
 |