updated for version 7.0016
diff --git a/src/fileio.c b/src/fileio.c
index b82cd4a..c925775 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -3832,8 +3832,10 @@
#ifdef FEAT_MBYTE
/*
* The BOM is written just after the encryption magic number.
+ * Skip it when appending and the file already existed, the BOM only makes
+ * sense at the start of the file.
*/
- if (buf->b_p_bomb && !write_bin)
+ if (buf->b_p_bomb && !write_bin && (!append || perm < 0))
{
write_info.bw_len = make_bom(buffer, fenc);
if (write_info.bw_len > 0)