updated for version 7.1-138
diff --git a/src/if_perl.xs b/src/if_perl.xs
index 2e27fed..acf7f86 100644
--- a/src/if_perl.xs
+++ b/src/if_perl.xs
@@ -445,13 +445,13 @@
     char *next;
     char *token = (char *)s;
 
-    while ((next = strchr(token, '\n')))
+    while ((next = strchr(token, '\n')) && !got_int)
     {
 	*next++ = '\0';			/* replace \n with \0 */
 	msg_attr((char_u *)token, attr);
 	token = next;
     }
-    if (*token)
+    if (*token && !got_int)
 	msg_attr((char_u *)token, attr);
 }