Warning cleanup from Gennady Feldman

-Erik
This commit is contained in:
Eric Andersen 2000-11-02 17:02:26 +00:00
parent ef936da7c5
commit a75466e981
2 changed files with 20 additions and 18 deletions

View File

@ -283,12 +283,12 @@ char** exe_n_cwd_tab_completion(char* command, int *num_matches)
return (matches); return (matches);
} }
void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len) void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len, int lastWasTab)
{ {
/* Do TAB completion */ /* Do TAB completion */
static int num_matches=0; static int num_matches=0;
static char **matches = (char **) NULL; static char **matches = (char **) NULL;
int pos = cursor; int pos = *cursor;
if (lastWasTab == FALSE) { if (lastWasTab == FALSE) {
@ -303,7 +303,7 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
/* Make a local copy of the string -- up /* Make a local copy of the string -- up
* to the position of the cursor */ * to the position of the cursor */
matchBuf = (char *) xcalloc(BUFSIZ, sizeof(char)); matchBuf = (char *) xcalloc(BUFSIZ, sizeof(char));
strncpy(matchBuf, command, cursor); strncpy(matchBuf, command, *cursor);
tmp=matchBuf; tmp=matchBuf;
/* skip past any command seperator tokens */ /* skip past any command seperator tokens */
@ -343,10 +343,10 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
if (matches && num_matches==1) { if (matches && num_matches==1) {
/* write out the matched command */ /* write out the matched command */
strncpy(command+pos, matches[0]+pos, strlen(matches[0])-pos); strncpy(command+pos, matches[0]+pos, strlen(matches[0])-pos);
len=strlen(command); *len=strlen(command);
cursor=len; *cursor=*len;
xwrite(outputFd, matches[0]+pos, strlen(matches[0])-pos); xwrite(outputFd, matches[0]+pos, strlen(matches[0])-pos);
break; return;
} }
} else { } else {
/* Ok -- the last char was a TAB. Since they /* Ok -- the last char was a TAB. Since they
@ -372,9 +372,9 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
/* Rewrite the prompt */ /* Rewrite the prompt */
xwrite(outputFd, prompt, strlen(prompt)); xwrite(outputFd, prompt, strlen(prompt));
/* Rewrite the command */ /* Rewrite the command */
xwrite(outputFd, command, len); xwrite(outputFd, command, *len);
/* Put the cursor back to where it used to be */ /* Put the cursor back to where it used to be */
for (cursor=len; cursor > pos; cursor--) for (cursor=len; *cursor > pos; cursor--)
xwrite(outputFd, "\b", 1); xwrite(outputFd, "\b", 1);
} }
} }
@ -505,7 +505,8 @@ extern void cmdedit_read_input(char* prompt, char command[BUFSIZ])
break; break;
case '\t': case '\t':
#ifdef BB_FEATURE_SH_TAB_COMPLETION #ifdef BB_FEATURE_SH_TAB_COMPLETION
input_tab(command, prompt, outputFd, &cursor, &len); input_tab(command, prompt, outputFd, &cursor,
&len, lastWasTab);
#endif #endif
break; break;
case 14: case 14:

View File

@ -283,12 +283,12 @@ char** exe_n_cwd_tab_completion(char* command, int *num_matches)
return (matches); return (matches);
} }
void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len) void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len, int lastWasTab)
{ {
/* Do TAB completion */ /* Do TAB completion */
static int num_matches=0; static int num_matches=0;
static char **matches = (char **) NULL; static char **matches = (char **) NULL;
int pos = cursor; int pos = *cursor;
if (lastWasTab == FALSE) { if (lastWasTab == FALSE) {
@ -303,7 +303,7 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
/* Make a local copy of the string -- up /* Make a local copy of the string -- up
* to the position of the cursor */ * to the position of the cursor */
matchBuf = (char *) xcalloc(BUFSIZ, sizeof(char)); matchBuf = (char *) xcalloc(BUFSIZ, sizeof(char));
strncpy(matchBuf, command, cursor); strncpy(matchBuf, command, *cursor);
tmp=matchBuf; tmp=matchBuf;
/* skip past any command seperator tokens */ /* skip past any command seperator tokens */
@ -343,10 +343,10 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
if (matches && num_matches==1) { if (matches && num_matches==1) {
/* write out the matched command */ /* write out the matched command */
strncpy(command+pos, matches[0]+pos, strlen(matches[0])-pos); strncpy(command+pos, matches[0]+pos, strlen(matches[0])-pos);
len=strlen(command); *len=strlen(command);
cursor=len; *cursor=*len;
xwrite(outputFd, matches[0]+pos, strlen(matches[0])-pos); xwrite(outputFd, matches[0]+pos, strlen(matches[0])-pos);
break; return;
} }
} else { } else {
/* Ok -- the last char was a TAB. Since they /* Ok -- the last char was a TAB. Since they
@ -372,9 +372,9 @@ void input_tab(char* command, char* prompt, int outputFd, int *cursor, int *len)
/* Rewrite the prompt */ /* Rewrite the prompt */
xwrite(outputFd, prompt, strlen(prompt)); xwrite(outputFd, prompt, strlen(prompt));
/* Rewrite the command */ /* Rewrite the command */
xwrite(outputFd, command, len); xwrite(outputFd, command, *len);
/* Put the cursor back to where it used to be */ /* Put the cursor back to where it used to be */
for (cursor=len; cursor > pos; cursor--) for (cursor=len; *cursor > pos; cursor--)
xwrite(outputFd, "\b", 1); xwrite(outputFd, "\b", 1);
} }
} }
@ -505,7 +505,8 @@ extern void cmdedit_read_input(char* prompt, char command[BUFSIZ])
break; break;
case '\t': case '\t':
#ifdef BB_FEATURE_SH_TAB_COMPLETION #ifdef BB_FEATURE_SH_TAB_COMPLETION
input_tab(command, prompt, outputFd, &cursor, &len); input_tab(command, prompt, outputFd, &cursor,
&len, lastWasTab);
#endif #endif
break; break;
case 14: case 14: