commit e118acc06863782ca102e3e76827c52221f96b91
parent 7d97ce7baf54835c38ca257ce389a9fd01676cc0
Author: Chris Allegretta <chrisa@asty.org>
Date: Mon, 6 Nov 2000 05:40:03 +0000
Change num_matches check from if to switch, fix check for num_matches == 0, fix allocation for matchBuf. Ugh.
git-svn-id: svn://svn.savannah.gnu.org/nano/trunk/nano@274 35c25a1d-7b9e-4130-9fde-d3aeb78583b8
Diffstat:
2 files changed, 11 insertions(+), 6 deletions(-)
diff --git a/files.c b/files.c
@@ -625,7 +625,8 @@ int input_tab(char *buf, int place, int lastWasTab)
/* Make a local copy of the string -- up to the position of the
cursor */
- matchBuf = (char *) calloc(strlen(buf), sizeof(char));
+ matchBuf = (char *) calloc(strlen(buf) + 2, sizeof(char));
+
strncpy(matchBuf, buf, place);
tmp = matchBuf;
@@ -656,14 +657,17 @@ int input_tab(char *buf, int place, int lastWasTab)
free(matchBuf);
/* Did we find exactly one match? */
- if (matches && num_matches == 1) {
+ switch(num_matches) {
+ case 0:
+ break;
+ case 1:
buf = nrealloc(buf, strlen(buf) + strlen(matches[0]) - pos + 1);
/* write out the matched command */
strncpy(buf + pos, matches[0] + pos,
strlen(matches[0]) - pos);
newplace += strlen(matches[0]) - pos;
- }
- else {
+ break;
+ default:
/* Check to see if all matches share a beginning, and if so
tack it onto buf and then beep */
@@ -689,6 +693,7 @@ int input_tab(char *buf, int place, int lastWasTab)
break;
}
}
+ break;
}
} else {
/* Ok -- the last char was a TAB. Since they
diff --git a/po/nano.pot b/po/nano.pot
@@ -6,7 +6,7 @@
msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
-"POT-Creation-Date: 2000-11-05 23:04-0500\n"
+"POT-Creation-Date: 2000-11-06 00:38-0500\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -107,7 +107,7 @@ msgstr ""
msgid "File exists, OVERWRITE ?"
msgstr ""
-#: files.c:735
+#: files.c:740
msgid "(more)"
msgstr ""