From fa266635c6e6ad4ee9e82951c24e57c02a213e0b Mon Sep 17 00:00:00 2001 From: Johannes Hofmann Date: Tue, 17 Mar 2009 08:41:43 +0100 Subject: fsync() temp file before rename() --- src/ImageMetaData.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/ImageMetaData.cxx b/src/ImageMetaData.cxx index cfa699e..f22a641 100644 --- a/src/ImageMetaData.cxx +++ b/src/ImageMetaData.cxx @@ -266,7 +266,8 @@ ImageMetaData::save_image_jpgcom(char *in_img, char *out_img) { err++; } - close(tmp_fd); + fsync(tmp_fd); /* make sure data is on disk before replacing orig file */ + close(tmp_fd); if (!err) { if (rename(tmpname, out_img) != 0) { -- cgit v1.2.3