X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Falloc_entry.c;h=506fb386d208d914fca43142019317f593285693;hp=5b5325daea8bb25354be5558de3bd3fa0cc6e85d;hb=f79b52fddd95c7a6f1ead29ef9c39eb8cdf60795;hpb=c6540b9c89dda1a6a8bd681726831e8924176504 diff --git a/ncurses/tinfo/alloc_entry.c b/ncurses/tinfo/alloc_entry.c index 5b5325da..506fb386 100644 --- a/ncurses/tinfo/alloc_entry.c +++ b/ncurses/tinfo/alloc_entry.c @@ -47,7 +47,7 @@ #include -MODULE_ID("$Id: alloc_entry.c,v 1.49 2010/01/23 17:57:43 tom Exp $") +MODULE_ID("$Id: alloc_entry.c,v 1.51 2010/12/25 23:06:01 tom Exp $") #define ABSENT_OFFSET -1 #define CANCELLED_OFFSET -2 @@ -64,8 +64,10 @@ _nc_init_entry(TERMTYPE *const tp) unsigned i; #if NO_LEAKS - if (tp == 0 && stringbuf != 0) { - FreeAndNull(stringbuf); + if (tp == 0) { + if (stringbuf != 0) { + FreeAndNull(stringbuf); + } return; } #endif @@ -180,7 +182,7 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings) } else if (tp->Strings[i] == CANCELLED_STRING) { offsets[i] = CANCELLED_OFFSET; } else { - offsets[i] = tp->Strings[i] - stringbuf; + offsets[i] = (int) (tp->Strings[i] - stringbuf); } } } @@ -189,7 +191,7 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings) if (ep->uses[i].name == 0) useoffsets[i] = ABSENT_OFFSET; else - useoffsets[i] = ep->uses[i].name - stringbuf; + useoffsets[i] = (int) (ep->uses[i].name - stringbuf); } if ((tp->str_table = typeMalloc(char, next_free)) == (char *) 0) @@ -213,10 +215,10 @@ _nc_wrap_entry(ENTRY * const ep, bool copy_strings) if (!copy_strings) { if ((n = (unsigned) NUM_EXT_NAMES(tp)) != 0) { if (n < SIZEOF(offsets)) { - unsigned length = 0; + size_t length = 0; for (i = 0; i < n; i++) { length += strlen(tp->ext_Names[i]) + 1; - offsets[i] = tp->ext_Names[i] - stringbuf; + offsets[i] = (int) (tp->ext_Names[i] - stringbuf); } if ((tp->ext_str_table = typeMalloc(char, length)) == 0) _nc_err_abort(MSG_NO_MEMORY);