aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteve Bennett <steveb@workware.net.au>2013-11-09 15:49:42 +1000
committerSteve Bennett <steveb@workware.net.au>2013-11-09 15:49:42 +1000
commitfae001d74c06a6293798d6b27db874ff46610a42 (patch)
treeafa93abfd0679c3bb25a5c3be57016450bfc0c14
parent99bf0333098dd093f7ce73c84ace002e09b169cc (diff)
downloadjimtcl-fae001d74c06a6293798d6b27db874ff46610a42.zip
jimtcl-fae001d74c06a6293798d6b27db874ff46610a42.tar.gz
jimtcl-fae001d74c06a6293798d6b27db874ff46610a42.tar.bz2
Strip trailing newline from Jim_HistoryGetLine()
When linenoise line editing is disabled Reported-by: Sergei Gavrikov <sergei.gavrikov@gmail.com> Signed-off-by: Steve Bennett <steveb@workware.net.au>
-rw-r--r--jim-interactive.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/jim-interactive.c b/jim-interactive.c
index c0f16da..60a5edc 100644
--- a/jim-interactive.c
+++ b/jim-interactive.c
@@ -19,6 +19,7 @@ char *Jim_HistoryGetline(const char *prompt)
#ifdef USE_LINENOISE
return linenoise(prompt);
#else
+ int len;
char *line = malloc(MAX_LINE_LEN);
fputs(prompt, stdout);
@@ -28,6 +29,10 @@ char *Jim_HistoryGetline(const char *prompt)
free(line);
return NULL;
}
+ len = strlen(line);
+ if (len && line[len - 1] == '\n') {
+ line[len - 1] = '\0';
+ }
return line;
#endif
}