 	; Is this condition absolutely necessary here?
 	if (!RegExMatch(full_command_line, " /restart(?!\S)") || chgPreset)
 	{
+		if (SprIniSlot)
+		SprIniSlot := """ """ . SprIniSlot . """"
+		else
+		SprIniSlot := """"
 		try
 		{
 		if (A_IsCompiled)
-		temp .= """" . A_ScriptFullPath . """" . " /restart """ . strTemp . """ """ . chgPreset . """ """ . SprIniSlot . """"
+		temp .= """" . A_ScriptFullPath . """" . " /restart """ . strTemp . """ """ . chgPreset . SprIniSlot
 		else
-		temp .= """" . A_AhkPath . """" . " /restart " . """" . A_ScriptFullPath . """ """ . strTemp . """ """ . chgPreset . """ """ . SprIniSlot . """"
+		temp .= """" . A_AhkPath . """" . " /restart " . """" . A_ScriptFullPath . """ """ . strTemp . """ """ . chgPreset . SprIniSlot
 		; restart may not work if LOAD phase is not completed- test it!!!
+msgbox % temp
 		Run, %temp%, %A_ScriptDir%
 		}
 		catch fTemp

		}
	}

	if (foundpos > fTemp)
	{
	temp := PrgListIndex[foundpos]
	PrgListIndex[foundpos] := PrgListIndex[fTemp]
	PrgListIndex[fTemp] := temp
	temp := PrgBdyBtchTog[foundpos]
	PrgBdyBtchTog[foundpos] := PrgBdyBtchTog[fTemp]
	PrgBdyBtchTog[fTemp] := temp
	}

	;init Status List

;commit preset to file each click
if (btchPrgPresetSel)
{
;For some  reason, variables and arrays do not update without the sleep!
sleep, 120
	strTemp := "|"
	Loop % currBatchNo
