diff options
author | Steve Slaven <bpk@hoopajoo.net> | 2009-07-23 16:53:57 (GMT) |
---|---|---|
committer | Steve Slaven <bpk@hoopajoo.net> | 2009-07-23 16:53:57 (GMT) |
commit | b90720764eab6c999fe7a4ef5169bb82fb080c22 (patch) | |
tree | 6e37520a4ddd6b199be6c15c92b157abbc08567a | |
parent | 505e75eee4c35bdf7cefb1fedaac99ee920b6177 (diff) | |
download | fusearchive-b90720764eab6c999fe7a4ef5169bb82fb080c22.zip fusearchive-b90720764eab6c999fe7a4ef5169bb82fb080c22.tar.gz fusearchive-b90720764eab6c999fe7a4ef5169bb82fb080c22.tar.bz2 |
Only save if file was modified
-rwxr-xr-x | fusearchive.py | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/fusearchive.py b/fusearchive.py index 328ee49..b1ebc36 100755 --- a/fusearchive.py +++ b/fusearchive.py @@ -360,6 +360,7 @@ class FuseArchive(Fuse): dmsg( 2, "Writing to " + self.orig_path ) self.file.seek(offset) self.file.write(buf) + self.modified = True return len(buf) def release(self, flags): @@ -367,11 +368,14 @@ class FuseArchive(Fuse): dmsg( 2, "Release: " + self.orig_path ) self.file.close() - dmsg( 2, "Copying working file back to storage: " + \ - self.tmp_name + " -> " + self.orig_path ) + if self.modified: + dmsg( 2, "Copying working file back to storage: " + \ + self.tmp_name + " -> " + self.orig_path ) - #pdb.set_trace() - deflate( self.tmp_name, "./tree" + self.orig_path ); + #pdb.set_trace() + deflate( self.tmp_name, "./tree" + self.orig_path ) + else: + dmsg( 2, "File not modified, not copying back" ) dmsg( 2, "Deleting old file: " + self.tmp_name ) os.unlink( self.tmp_name ); @@ -396,6 +400,7 @@ class FuseArchive(Fuse): return os.fstat(self.fd) def ftruncate(self, len): + self.modified = True self.file.truncate(len) def lock(self, cmd, owner, **kw): |