Index: typo3/sysext/setup/mod/index.php
===================================================================
--- typo3/sysext/setup/mod/index.php	(revision 7620)
+++ typo3/sysext/setup/mod/index.php	(working copy)
@@ -117,6 +117,8 @@
 	protected $passwordIsSubmitted = FALSE;
 	protected $setupIsUpdated = FALSE;
 	protected $tempDataIsCleared = FALSE;
+	protected $installToolFileExists = FALSE;
+	protected $installToolFileKeep = FALSE;
 
 
 	/******************************
@@ -266,6 +268,11 @@
 	function init()	{
 		$this->MCONF = $GLOBALS['MCONF'];
 
+			//check Install Tool enable file
+		$this->installToolFileExists = is_file(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
+		if ($this->installToolFileExists) {
+			$this->installToolFileKeep = (trim(file_get_contents(PATH_typo3conf . 'ENABLE_INSTALL_TOOL')) === 'KEEP_FILE');
+		}
 
 			// Returns the script user - that is the REAL logged in user! ($GLOBALS[BE_USER] might be another user due to simulation!)
 		$scriptUser = $this->getRealScriptUserObj();
@@ -305,10 +312,20 @@
 
 			// file creation / delete
 		if ($this->isAdmin) {
+			if ($this->installToolFileKeep) {
+				$flashMessage = t3lib_div::makeInstance(
+					't3lib_FlashMessage',
+					$LANG->getLL('enableInstallTool.fileHasKeep'),
+					$LANG->getLL('enableInstallTool.file'),
+					t3lib_FlashMessage::WARNING
+				);
+				$this->content .= $flashMessage->render();
+			}
+
 			if (t3lib_div::_POST('deleteInstallToolEnableFile')) {
 				unlink(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
-				$installToolEnableFileExists = is_file(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
-				if ($installToolEnableFileExists) {
+				$this->installToolFileExists = is_file(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
+				if ($this->installToolFileExists) {
 					$flashMessage = t3lib_div::makeInstance(
 						't3lib_FlashMessage',
 						$LANG->getLL('enableInstallTool.fileDelete_failed'),
@@ -327,8 +344,8 @@
 			}
 			if (t3lib_div::_POST('createInstallToolEnableFile')) {
 				touch(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
-				$installToolEnableFileExists = is_file(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
-				if ($installToolEnableFileExists) {
+				$this->installToolFileExists = is_file(PATH_typo3conf . 'ENABLE_INSTALL_TOOL');
+				if ($this->installToolFileExists) {
 					$flashMessage = t3lib_div::makeInstance(
 						't3lib_FlashMessage',
 						$LANG->getLL('enableInstallTool.fileCreate_ok'),
@@ -764,22 +781,20 @@
 	 * @return string	                       html with description and button
 	 */
 	public function renderInstallToolEnableFileButton(array $params, SC_mod_user_setup_index $parent) {
-		// Install Tool access file
+			// Install Tool access file
 		$installToolEnableFile = PATH_typo3conf . 'ENABLE_INSTALL_TOOL';
-		$installToolEnableFileExists = is_file($installToolEnableFile);
-		if ($installToolEnableFileExists && (time() - filemtime($installToolEnableFile) > 3600)) {
-			$content = file_get_contents($installToolEnableFile);
-			$verifyString = 'KEEP_FILE';
-
-			if (trim($content) !== $verifyString) {
+		if ($parent->installToolFileExists && (time() - filemtime($installToolEnableFile) > 3600)) {
+			if (!$parent->installToolFileKeep) {
 					// Delete the file if it is older than 3600s (1 hour)
 				unlink($installToolEnableFile);
-				$installToolEnableFileExists = is_file($installToolEnableFile);
+				$parent->installToolFileExists = is_file($installToolEnableFile);
 			}
 		}
 
-		if ($installToolEnableFileExists) {
-			return '';
+		if ($parent->installToolFileExists) {
+			return 'installToolFileKeep ? ' disabled="disabled"' : '') .
+					' value="' . $GLOBALS['LANG']->sL('LLL:EXT:setup/mod/locallang.xml:enableInstallTool.deleteFile') . '" />';
 		} else {
 			return '';
 		}
@@ -898,10 +913,10 @@
 		}
 		return t3lib_BEfunc::cshItem('_MOD_user_setup', $str, $this->doc->backPath, '|', false, 'margin-bottom:0px;');
 	}
-	
+
 	/**
 	 * Returns array with fields defined in $GLOBALS['TYPO3_USER_SETTINGS']['showitem']
-	 * 
+	 *
 	 * @param	void
 	 * @return	array	array with fieldnames visible in form
 	 */
Index: typo3/sysext/setup/mod/locallang.xml
===================================================================
--- typo3/sysext/setup/mod/locallang.xml	(revision 7620)
+++ typo3/sysext/setup/mod/locallang.xml	(working copy)
@@ -112,6 +112,7 @@
 			
 			
 			
+