chiark / gitweb /
Use .tmp for temporary files and write-then-rename
[ypp-sc-tools.db-test.git] / pctb / dictionary-manager
index 3c338cac6c3e0fc3fa8e24e9be427002926efb84..5079defd1d00abfbc9995a6f439f21efe95758ba 100755 (executable)
@@ -225,7 +225,7 @@ proc write_database {} {
     global reqkind database_fn database
     upvar #0 database_magic/$reqkind magic
     
-    set f [open $database_fn.new w]
+    set f [open $database_fn.tmp w]
     puts $f $magic
 
     write_database_header/$reqkind $f
@@ -239,7 +239,7 @@ proc write_database {} {
     }
     puts $f "."
     close $f
-    file rename -force $database_fn.new $database_fn
+    file rename -force $database_fn.tmp $database_fn
 }
 
 proc select_database {dbname_spec} {
@@ -1186,9 +1186,14 @@ proc approve_showentry {ix file specdata} {
     label $wb-def.def -text $def
     pack $wb-def.scope $wb-def.def -side bottom
 
-    set ppm [exec pnmscale 2 << $image]
-    image create photo approve/$ix -data $ppm
-    label $wb-image -image approve/$ix -bd 2 -relief sunken
+    if {[regexp {^P2} $image]} {
+       set image [exec pgmtoppm {#008-white} << $image | pnmnoraw]
+       append image "\n"
+    }
+    set image [exec pnmscale 2 << $image]
+
+    image create photo approve/$ix -data $image
+    label $wb-image -image approve/$ix -bd 2 -relief flat -bg black
 
     manyset [dict2_reqkind_rows $dict] reqkind
     approve_showentry_xinfo/$reqkind $wb-xinfo $def