X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Fwrite_entry.c;h=1949f0702110549e99161e1a8305157c79d62f23;hp=444cf01eef6cfa396a739e2874545da95adde4c2;hb=c55d387cebf1cee4757ca2c2ef4fbeae59ee4175;hpb=eccca377f55c70b12e3e92621d94d1e1c1fcfb7d diff --git a/ncurses/tinfo/write_entry.c b/ncurses/tinfo/write_entry.c index 444cf01e..1949f070 100644 --- a/ncurses/tinfo/write_entry.c +++ b/ncurses/tinfo/write_entry.c @@ -50,7 +50,7 @@ #define TRACE_NUM(n) /* nothing */ #endif -MODULE_ID("$Id: write_entry.c,v 1.111 2019/01/20 02:54:14 tom Exp $") +MODULE_ID("$Id: write_entry.c,v 1.114 2019/06/29 23:07:18 tom Exp $") static int total_written; static int total_parts; @@ -70,7 +70,7 @@ write_file(char *filename, TERMTYPE2 *tp) _nc_warning("entry is larger than %u bytes", limit); } else { FILE *fp = ((_nc_access(filename, W_OK) == 0) - ? fopen(filename, "wb") + ? fopen(filename, BIN_W) : 0); size_t actual; @@ -405,7 +405,7 @@ _nc_write_entry(TERMTYPE2 *const tp) _nc_SPRINTF(filename, _nc_SLIMIT(sizeof(filename)) LEAF_FMT "/%.*s", UChar(first_name[0]), - (int) (sizeof(filename) - LEAF_LEN - 2), + (int) (sizeof(filename) - (LEAF_LEN + 2)), first_name); if (saved) @@ -466,7 +466,8 @@ _nc_write_entry(TERMTYPE2 *const tp) check_writeable(ptr[0]); _nc_SPRINTF(linkname, _nc_SLIMIT(sizeof(linkname)) - LEAF_FMT "/%s", ptr[0], ptr); + LEAF_FMT "/%.*s", ptr[0], + (int) sizeof(linkname) - (2 + LEAF_LEN), ptr); if (strcmp(filename, linkname) == 0) { _nc_warning("self-synonym ignored");