--- ray/src/util/do_file.tcl 1994/12/08 15:53:46 2.4 +++ ray/src/util/do_file.tcl 1995/05/17 15:55:06 2.8 @@ -19,7 +19,7 @@ proc preen {} { # clean up radvar set n 1 foreach v $oldval { if {"[string index $v 0]" == "-"} { - lappend radvar(view) "$n $v" + lappend radvar(view) "u$n $v" } elseif {[lsearch -glob $radvar(view) \ "[lindex $v 0] *"] >= 0} { continue @@ -167,7 +167,7 @@ proc load_vars {f {vl all}} { # load RIF variables set curmess {Project loaded.} } else { foreach n $vl { - set radvar($n) {} + catch {unset radvar($n)} } while {[gets $fi curli] != -1} { if [regexp {^[a-zA-Z][a-zA-Z0-9]* *=} $curli] { @@ -241,6 +241,11 @@ proc newsave f { # save a RIF questhead 1 {Go Ahead} {Cancel}] { return 0 } + } + if {[file exists $f] && ! [file writable $f] && + [catch {exec chmod u+w $f} curmess]} { + beep + return 0 } if [save_vars $f] { set rifname [pwd]/$f