X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=ncurses%2Ftinfo%2Flib_napms.c;h=e1a0587028ed75e78b8f47542d42840299fe6d42;hp=1003fa411c2cfa5167a50da2e27ca4d3e7d33fb1;hb=fe43d506ce08d1deef9e9e5a6d5fd4f9c9c32e1d;hpb=a8987e73ec254703634802b4f7ee30d3a485524d;ds=sidebyside diff --git a/ncurses/tinfo/lib_napms.c b/ncurses/tinfo/lib_napms.c index 1003fa41..e1a05870 100644 --- a/ncurses/tinfo/lib_napms.c +++ b/ncurses/tinfo/lib_napms.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1998-2002,2003 Free Software Foundation, Inc. * + * Copyright (c) 1998-2014,2017 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 * @@ -29,6 +29,8 @@ /**************************************************************************** * Author: Zeyd M. Ben-Halim 1992,1995 * * and: Eric S. Raymond * + * and: Thomas E. Dickey 1996-on * + * and: Juergen Pfeifer 2009 * ****************************************************************************/ /* @@ -49,27 +51,41 @@ #endif #endif -MODULE_ID("$Id: lib_napms.c,v 1.14 2003/11/30 00:54:29 Philippe.Blain Exp $") +MODULE_ID("$Id: lib_napms.c,v 1.25 2017/07/01 21:05:56 tom Exp $") NCURSES_EXPORT(int) -napms(int ms) +NCURSES_SP_NAME(napms) (NCURSES_SP_DCLx int ms) { T((T_CALLED("napms(%d)"), ms)); +#ifdef USE_TERM_DRIVER + CallDriver_1(SP_PARM, td_nap, ms); +#else /* !USE_TERM_DRIVER */ +#if NCURSES_SP_FUNCS + (void) sp; +#endif #if HAVE_NANOSLEEP { struct timespec request, remaining; - int err; request.tv_sec = ms / 1000; request.tv_nsec = (ms % 1000) * 1000000; - while ((err = nanosleep(&request, &remaining)) == -1 + while (nanosleep(&request, &remaining) == -1 && errno == EINTR) { request = remaining; } } #else - _nc_timed_wait(0, ms, (int *) 0 EVENTLIST_2nd(0)); + _nc_timed_wait(0, 0, ms, (int *) 0 EVENTLIST_2nd(0)); #endif +#endif /* !USE_TERM_DRIVER */ returnCode(OK); } + +#if NCURSES_SP_FUNCS +NCURSES_EXPORT(int) +napms(int ms) +{ + return NCURSES_SP_NAME(napms) (CURRENT_SCREEN, ms); +} +#endif