Quoting Dag Wieers <[EMAIL PROTECTED]>: > Revelation cannot handle a disk-full situation. I just lost all my > passwords (file was 0 bytes in size).
Hm, right. It is not trivial to detect disk-full situations, because when you write data to a file what happens is basically: 1. Open file for writing, and truncate size to 0 bytes 2. Write data to file In a disk full situation, step 2 will fail, but the file will already be truncated by step 1. The best would be if the operating system provided an atomic function for writing data to a file, but I'm not sure if this exists in POSIX. I could always write to a temp-file and move it over the original file, but in that case this will break any hard-links to the file because it has a different inode. One could also check for free space on disk before saving, but not all media correctly report free diskspace, and this is impossible to do over network protocols (webdav for example). I will have a closer look at this once I'm back home though, would be nice to avoid these situations.