Make info file updates atomic.
[utils.git] / planime
diff --git a/planime b/planime
index 899a1c9..edcba1f 100755 (executable)
--- a/planime
+++ b/planime
@@ -60,10 +60,8 @@ ifile=".${ep}.info"
 
 if [ -n "$savepar" ]; then
     if [ -r "$ifile" ]; then
-       exec 3<"$ifile"
-       rm "$ifile"
-       egrep -v "^${savepar}:" 0<&3 >"$ifile"
-       exec 3<&-
+       egrep -v "^${savepar}:" "$ifile" >"$ifile.new"
+       mv -f "$ifile.new" "$ifile"
     fi
     echo "$savepar: $saveval" >>"$ifile"
     exit 0