summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/file_handle_cache.erl5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/file_handle_cache.erl b/src/file_handle_cache.erl
index 65cbe2c8be..6f38181717 100644
--- a/src/file_handle_cache.erl
+++ b/src/file_handle_cache.erl
@@ -376,8 +376,9 @@ sync(Ref) ->
needs_sync(Ref) ->
with_handles(
[Ref],
- fun ([#handle { write_buffer = [] }]) -> false;
- ([_Handle]) -> true
+ fun ([#handle { write_buffer = [_|_] }]) -> true;
+ ([#handle { is_dirty = true }]) -> true;
+ ([_Handle]) -> false
end).
position(Ref, NewOffset) ->