diff --git a/src/core/libraries/kernel/file_system.cpp b/src/core/libraries/kernel/file_system.cpp index 74b79d462..dbbdd71db 100644 --- a/src/core/libraries/kernel/file_system.cpp +++ b/src/core/libraries/kernel/file_system.cpp @@ -293,9 +293,10 @@ s64 PS4_SYSV_ABI write(s32 fd, const void* buf, size_t nbytes) { } return result; } + auto file_size_before = file->f.GetSize(); auto written_bytes = file->f.WriteRaw(buf, nbytes); auto file_size = file->f.GetSize(); - if (file_size != written_bytes) { + if (file_size != file_size_before + written_bytes) { file->f.SetSize(written_bytes); } return written_bytes;