diff --git a/NIF_IO.cpp b/NIF_IO.cpp
index f398c99386fab32b9770c695ad43fbe065bad99a..b4bc0a3dc14fea7180fee81925b02e2a700e4bea 100644
--- a/NIF_IO.cpp
+++ b/NIF_IO.cpp
@@ -281,9 +281,9 @@ void NifStream( ShortString & val, istream& in, uint version ) {
 };
 
 void NifStream( ShortString const & val, ostream& out, uint version ) {
-	byte len = byte( std::streamsize(val.str.size()) );
+	byte len = byte( std::streamsize(val.str.size()) + 1 );
 	WriteByte( len, out );
-	out.write( val.str.c_str(), std::streamsize(val.str.size()) );
+	out.write( val.str.c_str(), std::streamsize(val.str.size()) + 1 );
 };
 
 ostream & operator<<( ostream & out, ShortString const & val ) {