PERFORCE change 13124 for review

[email protected] (Chris Nandor) Mon, 19 Nov 2001 23:48:21 -0500
Newsgroups perl.perl5.changes.mac
Message-ID <p05100305b81f9111338d@[10.0.1.177]>
Change 13124 by pudge@pudge-mobile on 2001/11/20 03:27:44

	More fixes for error message parsing (bug #470316)

Affected files ...

.... //depot/maint-5.6/macperl/macos/macish.c#9 edit

Differences ...

==== //depot/maint-5.6/macperl/macos/macish.c#9 (text) ====
Index: perl/macos/macish.c
--- perl/macos/macish.c.~1~	Mon Nov 19 20:45:05 2001
+++ perl/macos/macish.c	Mon Nov 19 20:45:05 2001
@@ -992,10 +992,10 @@
 			if (*newline == '\n' && newline < msg+len)
 				++newline;
 				
-			/* Got it, now look for preceding " at ." length reduced by 1 because file name
+			/* Got it, now look for preceding " at ." length reduced by 4 because file name
 			 * must be at least 1 character long.
 			 */
-			at	= strnstr(msg, " at ", line-msg-1);
+			at	= strnstr(msg, " at ", line-msg-4);
 	
 			if (at) {
 				/* msg <= at < line */
@@ -1009,7 +1009,20 @@
 					
 				/* OK, we got them both, write the original message prefixed with # */
 				WriteMsg(io, msg, at-msg, true);
-				PerlIO_write(io, endline, newline-endline);
+				if (newline > endline) {
+					switch (*endline) {
+					case ',':
+					case '.':
+					case ';':
+					case '\t':
+					case '\n':
+						break;
+					default:
+						PerlIO_write(io, " ", 1);
+						break;
+					}
+					PerlIO_write(io, endline, newline-endline);
+				}
 				PerlIO_write(io, "File \'", 6);
 				PerlIO_write(io, at+4, line-at-4);
 				PerlIO_write(io, "\'; Line ", 8);
End of Patch.