libedit/libedit-3.0-warnings.patch
Jerry James 9284484112 * Thu Mar 24 2011 Jerry James <loganjerry@gmail.com> - 3.0-3.20110227cvs
- Update to 3.0 (20110227 snap)
- Drop upstreamed -sigwinch patch
- Preserve ChangeLog timestamp when converting to UTF-8
- Fix "unused direct shared library dependency" warning from rpmlint
- Don't BR gawk; it is on the exceptions list
2011-03-24 16:19:15 -06:00

94 lines
2.9 KiB
Diff

diff -durp libedit-20110227-3.0.orig/examples/fileman.c libedit-20110227-3.0/examples/fileman.c
--- libedit-20110227-3.0.orig/examples/fileman.c 2010-04-22 13:13:17.000000000 -0600
+++ libedit-20110227-3.0/examples/fileman.c 2011-03-24 15:48:02.492809146 -0600
@@ -279,7 +279,7 @@ command_generator (text, state)
/* Return the next name which partially matches from the
command list. */
- while (name = commands[list_index].name)
+ while ((name = commands[list_index].name))
{
list_index++;
diff -durp libedit-20110227-3.0.orig/examples/wtc1.c libedit-20110227-3.0/examples/wtc1.c
--- libedit-20110227-3.0.orig/examples/wtc1.c 2010-04-22 13:13:17.000000000 -0600
+++ libedit-20110227-3.0/examples/wtc1.c 2011-03-24 15:48:02.493809075 -0600
@@ -60,7 +60,7 @@ complete(EditLine *el, int ch)
char *buf, *bptr;
const LineInfoW *lf = el_wline(el);
int len, mblen, i;
- unsigned char res;
+ unsigned char res = CC_NORM;
/* Find the last word */
for (ptr = lf->cursor -1; !iswspace(*ptr) && ptr > lf->buffer; --ptr)
diff -durp libedit-20110227-3.0.orig/src/readline.c libedit-20110227-3.0/src/readline.c
--- libedit-20110227-3.0.orig/src/readline.c 2011-02-26 15:42:59.000000000 -0700
+++ libedit-20110227-3.0/src/readline.c 2011-03-24 15:48:02.500808588 -0600
@@ -1280,8 +1280,8 @@ history_truncate_file (const char *filen
}
}
fflush(fp);
- if((off = ftello(fp)) > 0)
- (void)ftruncate(fileno(fp), off);
+ if((off = ftello(fp)) > 0 && ftruncate(fileno(fp), off) < 0)
+ ret = errno;
out3:
fclose(tp);
out2:
diff -durp libedit-20110227-3.0.orig/src/vi.c libedit-20110227-3.0/src/vi.c
--- libedit-20110227-3.0.orig/src/vi.c 2011-02-26 15:42:59.000000000 -0700
+++ libedit-20110227-3.0/src/vi.c 2011-03-24 15:48:02.501808516 -0600
@@ -1009,6 +1009,7 @@ vi_histedit(EditLine *el, Int c)
char *cp;
size_t len;
Char *line;
+ el_action_t rv = CC_ERROR;
if (el->el_state.doingarg) {
if (vi_to_history_line(el, 0) == CC_ERROR)
@@ -1036,16 +1037,14 @@ vi_histedit(EditLine *el, Int c)
ct_wcstombs(cp, line, TMP_BUFSIZ - 1);
cp[TMP_BUFSIZ - 1] = '\0';
len = strlen(cp);
- write(fd, cp, len);
- write(fd, "\n", 1);
+ if (write(fd, cp, len) < 0 || write(fd, "\n", 1) < 0)
+ /* FIXME: handle EAGAIN somehow? */
+ goto fail;
+
pid = fork();
switch (pid) {
case -1:
- close(fd);
- unlink(tempfile);
- el_free(cp);
- el_free(line);
- return CC_ERROR;
+ goto fail;
case 0:
close(fd);
execlp("vi", "vi", tempfile, (char *)NULL);
@@ -1067,15 +1066,17 @@ vi_histedit(EditLine *el, Int c)
len = 0;
el->el_line.cursor = el->el_line.buffer;
el->el_line.lastchar = el->el_line.buffer + len;
- el_free(cp);
- el_free(line);
break;
}
+ /* return CC_REFRESH; */
+ rv = ed_newline(el, 0);
+fail:
close(fd);
unlink(tempfile);
- /* return CC_REFRESH; */
- return ed_newline(el, 0);
+ el_free(cp);
+ el_free(line);
+ return rv;
}
/* vi_history_word():