diff options
author | Andreas Rumpf <rumpf_a@web.de> | 2016-01-17 22:55:14 +0100 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2016-01-17 22:55:14 +0100 |
commit | 07d5adf9eeaec6adfb6dcc8c572bb4080766d7ed (patch) | |
tree | 504af67e084b351288c0b3d914c8b2179c3a635f /lib | |
parent | f92f00b022fd367ded609fd9a8c547377a9ced51 (diff) | |
download | Nim-07d5adf9eeaec6adfb6dcc8c572bb4080766d7ed.tar.gz |
fixes #3720
Diffstat (limited to 'lib')
-rw-r--r-- | lib/wrappers/linenoise/clinenoise.c | 20 | ||||
-rw-r--r-- | lib/wrappers/linenoise/clinenoise.h | 20 |
2 files changed, 16 insertions, 24 deletions
diff --git a/lib/wrappers/linenoise/clinenoise.c b/lib/wrappers/linenoise/clinenoise.c index dd3aa736c..a03e6f379 100644 --- a/lib/wrappers/linenoise/clinenoise.c +++ b/lib/wrappers/linenoise/clinenoise.c @@ -139,7 +139,7 @@ struct linenoiseState { int ofd; /* Terminal stdout file descriptor. */ char *buf; /* Edited line buffer. */ size_t buflen; /* Edited line buffer size. */ - const char *prompt; /* Prompt to display. */ + char *prompt; /* Prompt to display. */ size_t plen; /* Prompt length. */ size_t pos; /* Current cursor position. */ size_t oldpos; /* Previous refresh cursor position. */ @@ -172,7 +172,7 @@ enum KEY_ACTION{ }; static void linenoiseAtExit(void); -int linenoiseHistoryAdd(const char *line); +int linenoiseHistoryAdd(char *line); static void refreshLine(struct linenoiseState *l); /* Debugging macro. */ @@ -413,7 +413,7 @@ void linenoiseSetCompletionCallback(linenoiseCompletionCallback *fn) { * in order to add completion options given the input string when the * user typed <tab>. See the example.c source code for a very easy to * understand example. */ -void linenoiseAddCompletion(linenoiseCompletions *lc, const char *str) { +void linenoiseAddCompletion(linenoiseCompletions *lc, char *str) { size_t len = strlen(str); char *copy, **cvec; @@ -445,7 +445,7 @@ static void abInit(struct abuf *ab) { ab->len = 0; } -static void abAppend(struct abuf *ab, const char *s, int len) { +static void abAppend(struct abuf *ab, char *s, int len) { char *neww = (char*)realloc(ab->b,ab->len+len); if (neww == NULL) return; @@ -723,7 +723,7 @@ void linenoiseEditDeletePrevWord(struct linenoiseState *l) { * when ctrl+d is typed. * * The function returns the length of the current buffer. */ -static int linenoiseEdit(int stdin_fd, int stdout_fd, char *buf, size_t buflen, const char *prompt) +static int linenoiseEdit(int stdin_fd, int stdout_fd, char *buf, size_t buflen, char *prompt) { struct linenoiseState l; @@ -929,7 +929,7 @@ void linenoisePrintKeyCodes(void) { /* This function calls the line editing function linenoiseEdit() using * the STDIN file descriptor set in raw mode. */ -static int linenoiseRaw(char *buf, size_t buflen, const char *prompt) { +static int linenoiseRaw(char *buf, size_t buflen, char *prompt) { int count; if (buflen == 0) { @@ -959,7 +959,7 @@ static int linenoiseRaw(char *buf, size_t buflen, const char *prompt) { * for a blacklist of stupid terminals, and later either calls the line * editing function or uses dummy fgets() so that you will be able to type * something even in the most desperate of the conditions. */ -char *linenoise(const char *prompt) { +char *linenoise(char *prompt) { char buf[LINENOISE_MAX_LINE]; int count; @@ -1009,7 +1009,7 @@ static void linenoiseAtExit(void) { * histories, but will work well for a few hundred of entries. * * Using a circular buffer is smarter, but a bit more complex to handle. */ -int linenoiseHistoryAdd(const char *line) { +int linenoiseHistoryAdd(char *line) { char *linecopy; if (history_max_len == 0) return 0; @@ -1072,7 +1072,7 @@ int linenoiseHistorySetMaxLen(int len) { /* Save the history in the specified file. On success 0 is returned * otherwise -1 is returned. */ -int linenoiseHistorySave(const char *filename) { +int linenoiseHistorySave(char *filename) { FILE *fp = fopen(filename,"w"); int j; @@ -1088,7 +1088,7 @@ int linenoiseHistorySave(const char *filename) { * * If the file exists and the operation succeeded 0 is returned, otherwise * on error -1 is returned. */ -int linenoiseHistoryLoad(const char *filename) { +int linenoiseHistoryLoad(char *filename) { FILE *fp = fopen(filename,"r"); char buf[LINENOISE_MAX_LINE]; diff --git a/lib/wrappers/linenoise/clinenoise.h b/lib/wrappers/linenoise/clinenoise.h index fbb01cfaa..a15845f86 100644 --- a/lib/wrappers/linenoise/clinenoise.h +++ b/lib/wrappers/linenoise/clinenoise.h @@ -39,30 +39,22 @@ #ifndef __LINENOISE_H #define __LINENOISE_H -#ifdef __cplusplus -extern "C" { -#endif - typedef struct linenoiseCompletions { size_t len; char **cvec; } linenoiseCompletions; -typedef void(linenoiseCompletionCallback)(const char *, linenoiseCompletions *); +typedef void(linenoiseCompletionCallback)(char *, linenoiseCompletions *); void linenoiseSetCompletionCallback(linenoiseCompletionCallback *); -void linenoiseAddCompletion(linenoiseCompletions *, const char *); +void linenoiseAddCompletion(linenoiseCompletions *, char *); -char *linenoise(const char *prompt); -int linenoiseHistoryAdd(const char *line); +char *linenoise(char *prompt); +int linenoiseHistoryAdd(char *line); int linenoiseHistorySetMaxLen(int len); -int linenoiseHistorySave(const char *filename); -int linenoiseHistoryLoad(const char *filename); +int linenoiseHistorySave(char *filename); +int linenoiseHistoryLoad(char *filename); void linenoiseClearScreen(void); void linenoiseSetMultiLine(int ml); void linenoisePrintKeyCodes(void); -#ifdef __cplusplus -} -#endif - #endif /* __LINENOISE_H */ |