-diff -u screen-4.0.2/input.c screen-4.0.2/input.c
---- screen-4.0.2/input.c 2006-02-22 23:38:20.000000000 +0200
-+++ screen-4.0.2/input.c 2006-02-23 00:31:34.000000000 +0200
+--- screen-4.1/input.c~ 2010-02-24 14:51:55.000000000 +0200
++++ screen-4.1/input.c 2010-02-24 14:53:38.919505608 +0200
@@ -38,7 +38,7 @@
struct inpline
char *inpstring; /* the prompt */
int inpstringlen; /* length of the prompt */
int inpmode; /* INP_NOECHO, INP_RAW, INP_EVERY */
-@@ -116,8 +116,8 @@
- int maxlen;
- struct inpdata *inpdata;
-
+@@ -133,8 +133,8 @@
+ if (!flayer)
+ return;
+
- if (len > 100)
- len = 100;
+ if (len > MAX_INPUTLINE - 1)
if (!(mode & INP_NOECHO))
{
maxlen = flayer->l_width - 1 - strlen(istr);
-diff -u screen-4.0.2/process.c screen-4.0.2/process.c
---- screen-4.0.2/process.c 2006-02-23 00:27:01.000000000 +0200
-+++ screen-4.0.2/process.c 2006-02-23 00:32:27.000000000 +0200
-@@ -1891,7 +1891,7 @@
+--- screen-4.1/process.c~ 2010-02-24 15:30:55.000000000 +0200
++++ screen-4.1/process.c 2010-02-24 15:32:17.993069465 +0200
+@@ -1777,7 +1777,7 @@
+ s = *args;
+ if (!args[0])
+ {
+- Input("Stuff:", 100, INP_COOKED, StuffFin, NULL, 0);
++ Input("Stuff:", MAX_INPUTLINE - 1, INP_COOKED, StuffFin, NULL, 0);
+ break;
+ }
+ n = *argl;
+@@ -2063,7 +2063,7 @@
ChangeAKA(fore, *args, strlen(*args));
break;
case RC_COLON:
-- Input(":", 100, INP_COOKED, Colonfin, NULL);
-+ Input(":", MAX_INPUTLINE - 1, INP_COOKED, Colonfin, NULL);
+- Input(":", 100, INP_EVERY, Colonfin, NULL, 0);
++ Input(":", MAX_INPUTLINE - 1, INP_EVERY, Colonfin, NULL, 0);
if (*args && **args)
{
s = *args;
-@@ -3004,7 +3004,7 @@
+@@ -3236,7 +3236,7 @@
Msg(0, "%s: password: window required", rc_name);
break;
}
-- Input("New screen password:", 100, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users);
-+ Input("New screen password:", MAX_INPUTLINE - 1, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users);
+- Input("New screen password:", 100, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users, 0);
++ Input("New screen password:", MAX_INPUTLINE - 1, INP_NOECHO, pass1, display ? (char *)D_user : (char *)users, 0);
}
break;
#endif /* PASSWORD */
-only in patch2:
-unchanged:
+@@ -6258,7 +6258,7 @@
+ free((char *)u->u_password);
+ u->u_password = SaveStr(buf);
+ bzero(buf, strlen(buf));
+- Input("Retype new password:", 100, INP_NOECHO, pass2, data, 0);
++ Input("Retype new password:", MAX_INPUTLINE - 1, INP_NOECHO, pass2, data, 0);
+ }
+
+ static void
--- screen-4.0.2/screen.h~ 2006-02-23 00:27:51.000000000 +0200
+++ screen-4.0.2/screen.h 2006-02-23 00:31:32.000000000 +0200
@@ -270,6 +270,7 @@