X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Finit_keytry.c;h=ea47b382b493343aca389f4cd3a39b8e33c7e26d;hp=d30d3ed16a876d3de2bcb0913fb4fedd42141da6;hb=a0bb9c404174926bf131a5989a0524a6eecd09eb;hpb=ed530db2c5b10aa19d06104dfe82cf248a813860 diff --git a/ncurses/tinfo/init_keytry.c b/ncurses/tinfo/init_keytry.c index d30d3ed1..ea47b382 100644 --- a/ncurses/tinfo/init_keytry.c +++ b/ncurses/tinfo/init_keytry.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1999-2006,2008 Free Software Foundation, Inc. * + * Copyright (c) 1999-2009,2010 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -27,16 +27,9 @@ ****************************************************************************/ #include - -#include -/* keypad_xmit, keypad_local, meta_on, meta_off */ -/* cursor_visible,cursor_normal,cursor_invisible */ - #include /* struct tinfo_fkeys */ -#include - -MODULE_ID("$Id: init_keytry.c,v 1.11 2008/05/03 23:09:15 tom Exp $") +MODULE_ID("$Id: init_keytry.c,v 1.17 2010/04/24 22:29:56 tom Exp $") /* ** _nc_init_keytry() @@ -45,6 +38,13 @@ MODULE_ID("$Id: init_keytry.c,v 1.11 2008/05/03 23:09:15 tom Exp $") ** */ +/* + * Internal entrypoints use SCREEN* parameter to obtain capabilities rather + * than cur_term. + */ +#undef CUR +#define CUR SP_TERMTYPE + #if BROKEN_LINKER #undef _nc_tinfo_fkeys #endif @@ -66,7 +66,7 @@ _nc_tinfo_fkeysf(void) NCURSES_EXPORT(void) _nc_init_keytry(SCREEN *sp) { - size_t n; + unsigned n; /* The sp->_keytry value is initialized in newterm(), where the sp * structure is created, because we can not tell where keypad() or @@ -90,12 +90,13 @@ _nc_init_keytry(SCREEN *sp) { TERMTYPE *tp = &(sp->_term->type); for (n = STRCOUNT; n < NUM_STRINGS(tp); ++n) { - const char *name = ExtStrname(tp, n, strnames); + const char *name = ExtStrname(tp, (int) n, strnames); char *value = tp->Strings[n]; if (name != 0 && *name == 'k' && value != 0 - && key_defined(value) == 0) { + && NCURSES_SP_NAME(key_defined) (NCURSES_SP_ARGx + value) == 0) { (void) _nc_add_to_try(&(sp->_keytry), value, n - STRCOUNT + KEY_MAX);