binfmt_script and ^M

From: Ivo Timmermans (irt@cistron.nl)
Date: Tue Feb 27 2001 - 08:03:33 EST


When running a script (perl in this case) that has DOS-style newlines
(\r\n), Linux 2.4.2 can't find an interpreter because it doesn't
recognize the \r. The following patch should fix this (untested).

Please Cc me on replies, I'm not on this list. Thanks.

--- binfmt_script.c~ Mon Feb 26 17:42:09 2001
+++ binfmt_script.c Tue Feb 27 13:39:47 2001
@@ -36,6 +36,8 @@
         bprm->buf[BINPRM_BUF_SIZE - 1] = '\0';
         if ((cp = strchr(bprm->buf, '\n')) == NULL)
                 cp = bprm->buf+BINPRM_BUF_SIZE-1;
+ if (cp - 1 == '\r')
+ cp--;
         *cp = '\0';
         while (cp > bprm->buf) {
                 cp--;

-- 
Ivo Timmermans
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Feb 28 2001 - 21:00:13 EST