Fix for using ":wundo foo" when foo is an empty file.
diff --git a/src/undo.c b/src/undo.c
index 35fa310..787f625 100644
--- a/src/undo.c
+++ b/src/undo.c
@@ -1286,11 +1286,12 @@
 	    }
 	    else
 	    {
-		char_u buf[2];
+		char_u	buf[2];
+		int	len;
 
-		vim_read(fd, buf, 2);
+		len = vim_read(fd, buf, 2);
 		close(fd);
-		if ((buf[0] << 8) + buf[1] != UF_START_MAGIC)
+		if (len < 2 || (buf[0] << 8) + buf[1] != UF_START_MAGIC)
 		{
 		    if (name != NULL || p_verbose > 0)
 			smsg((char_u *)_("Will not overwrite, this is not an undo file: %s"),