diff --git a/Source/Plugins/BinaryWriter/BinaryRecording.cpp b/Source/Plugins/BinaryWriter/BinaryRecording.cpp
index d3abb257b7938a95b99f396c7a945d9f464f0ae8..579b90ecaf030abf4a468905b60ce6046ab6cfb6 100644
--- a/Source/Plugins/BinaryWriter/BinaryRecording.cpp
+++ b/Source/Plugins/BinaryWriter/BinaryRecording.cpp
@@ -339,7 +339,7 @@ void BinaryRecording::writeMessage(const MidiMessage& event, int64 timestamp)
 	diskWriteLock.enter();
 	fwrite(timestampText.toUTF8(), 1, timestampText.length(), messageFile);
 	fwrite(" ", 1, 1, messageFile);
-	fwrite(dataptr, 1, msgLength, messageFile);
+	fwrite(dataptr, 1, msgLength-1, messageFile);
 	fwrite("\n", 1, 1, messageFile);
 	diskWriteLock.exit();
 
@@ -414,4 +414,4 @@ RecordEngineManager* BinaryRecording::getEngineManager()
 {
 	RecordEngineManager* man = new RecordEngineManager("RAWBINARY", "Binary", &(engineFactory<BinaryRecording>));
 	return man;
-}
\ No newline at end of file
+}
diff --git a/Source/Processors/RecordNode/OriginalRecording.cpp b/Source/Processors/RecordNode/OriginalRecording.cpp
index 9f8d0ae116989997ddc50431f34c0e5532da9d13..8c7593497410b66da790f8fa9a7d9a7f48ae92a6 100644
--- a/Source/Processors/RecordNode/OriginalRecording.cpp
+++ b/Source/Processors/RecordNode/OriginalRecording.cpp
@@ -403,7 +403,7 @@ void OriginalRecording::writeMessage(const MidiMessage& event, int64 timestamp)
     diskWriteLock.enter();
     fwrite(timestampText.toUTF8(),1,timestampText.length(),messageFile);
     fwrite(" ",1,1,messageFile);
-    fwrite(dataptr,1,msgLength,messageFile);
+    fwrite(dataptr,1,msgLength-1,messageFile);
     fwrite("\n",1,1,messageFile);
     diskWriteLock.exit();