diff options
-rw-r--r-- | netfs/fuse/fuseFiles.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/netfs/fuse/fuseFiles.cpp b/netfs/fuse/fuseFiles.cpp index 8781772..7bd86ca 100644 --- a/netfs/fuse/fuseFiles.cpp +++ b/netfs/fuse/fuseFiles.cpp @@ -85,11 +85,14 @@ namespace NetFS { auto remote = of->remote; try { of->flush(); + clearProxy<OpenFilePtr>(fi->fh); + remote->close(); } catch (SystemError & e) { + clearProxy<OpenFilePtr>(fi->fh); + remote->close(); + throw; } - remote->close(); - clearProxy<OpenFilePtr>(fi->fh); return 0; } catch (SystemError & e) { |