summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Modules/timemodule.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/Modules/timemodule.c b/Modules/timemodule.c
index 78724f0..f886691 100644
--- a/Modules/timemodule.c
+++ b/Modules/timemodule.c
@@ -33,6 +33,10 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#include <signal.h>
#include <setjmp.h>
+#ifndef NO_UNISTD
+#include <unistd.h>
+#endif
+
/* What happens here is not trivial.
The BSD_TIME code needs <sys/time.h> (for struct timeval).
The rest of the code needs only time_t, except some MS-DOS
@@ -95,9 +99,10 @@ time_time(self, args)
static jmp_buf sleep_intr;
+/* ARGSUSED */
static void
sleep_catcher(sig)
- int sig;
+ int sig; /* Not used but required by interface */
{
longjmp(sleep_intr, 1);
}
@@ -108,7 +113,7 @@ time_sleep(self, args)
object *args;
{
int secs;
- SIGTYPE (*sigsave)();
+ SIGTYPE (*sigsave)() = 0; /* Initialized to shut lint up */
if (!getintarg(args, &secs))
return NULL;
if (setjmp(sleep_intr)) {
@@ -193,6 +198,8 @@ time_times(self, args)
struct tms t;
clock_t c;
object *tuple;
+ if (!getnoarg(args))
+ return NULL;
errno = 0;
c = times(&t);
if (c == (clock_t) -1) {