diff --git a/src/ui/script_ui.cpp b/src/ui/script_ui.cpp
index 42101d8fc..028801c64 100644
--- a/src/ui/script_ui.cpp
+++ b/src/ui/script_ui.cpp
@@ -1124,23 +1124,20 @@ local SCM CclDefineUI(SCM list)
 	}
     }
 
-    temp=gh_car(list);
+    value=gh_car(list);
     list=gh_cdr(list);
-
-    value=gh_car(temp);
-    temp=gh_cdr(temp);
-    str=gh_scm2newstr(value,NULL);
-    free(ui->VictoryBackground.File);
-    ui->VictoryBackground.File=str;
-
-    temp=gh_car(list);
+    if( gh_eq_p(value,gh_symbol2scm("victory-background")) ) {
+	value=gh_car(list);
+	list=gh_cdr(list);
+	ui->VictoryBackground.File=gh_scm2newstr(value,NULL);
+    }
+    value=gh_car(list);
     list=gh_cdr(list);
-
-    value=gh_car(temp);
-    temp=gh_cdr(temp);
-    str=gh_scm2newstr(value,NULL);
-    free(ui->DefeatBackground.File);
-    ui->DefeatBackground.File=str;
+    if( gh_eq_p(value,gh_symbol2scm("defeat-background")) ) {
+	value=gh_car(list);
+	list=gh_cdr(list);
+	ui->DefeatBackground.File=gh_scm2newstr(value,NULL);
+    }
 
     return SCM_UNSPECIFIED;
 }
diff --git a/src/ui/ui.cpp b/src/ui/ui.cpp
index 88ed9648b..d8dbb883a 100644
--- a/src/ui/ui.cpp
+++ b/src/ui/ui.cpp
@@ -390,8 +390,10 @@ local void SaveUi(FILE* file,const UI* ui)
     }
     fprintf(file,")\n");
 
-    fprintf(file,"\n  (list \"%s\")",ui->VictoryBackground.File);
-    fprintf(file,"\n  (list \"%s\")",ui->DefeatBackground.File);
+    fprintf(file,"\n  'victory-background \"%s\"",
+	    ui->VictoryBackground.File);
+    fprintf(file,"\n  'defeat-background \"%s\"",
+	    ui->DefeatBackground.File);
 
     fprintf(file," )\n\n");
 }