# with only one command
 #
 # Author:        Patrick Canterino <patshaping@gmx.net>
-# Last modified: 09-20-2003
+# Last modified: 09-26-2003
 #
 
 use strict;
  my $file = shift;
  local *FILE;
 
- open(FILE,"<",$file);
+ open(FILE,"<",$file) or return;
  read(FILE, my $content, -s $file);
- close(FILE);
+ close(FILE)          or return;
 
  return \$content;
 }
 # Params: 1. File
 #         2. File content as Scalar Reference
 #
-# Return: Status Code (Boolean)
+# Return: Status code (Boolean)
 
 sub file_save($$)
 {
  local *FILE;
 
  open(FILE,">",$temp) or return;
- print FILE $$content;
- close(FILE) or return;
+ print FILE $$content or do { close(FILE); return };
+ close(FILE)          or return;
 
- rename($temp,$file) or return;
+ rename($temp,$file)  or return;
 
  return 1;
 }