summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--httpd.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/httpd.c b/httpd.c
index 258f788..ee1ecb7 100644
--- a/httpd.c
+++ b/httpd.c
@@ -293,16 +293,16 @@ void job_wait(xs_val **job)
static void *job_thread(void *arg)
/* job thread */
{
- long long pid = (long long)arg;
+ int pid = (char *) arg - (char *) 0x0;
- srv_debug(1, xs_fmt("job thread %ld started", pid));
+ srv_debug(1, xs_fmt("job thread %d started", pid));
for (;;) {
xs *job = NULL;
job_wait(&job);
- srv_debug(1, xs_fmt("job thread %ld wake up", pid));
+ srv_debug(1, xs_fmt("job thread %d wake up", pid));
if (job == NULL)
break;
@@ -322,7 +322,7 @@ static void *job_thread(void *arg)
}
}
- srv_debug(1, xs_fmt("job thread %ld stopped", pid));
+ srv_debug(1, xs_fmt("job thread %d stopped", pid));
return NULL;
}
@@ -441,8 +441,9 @@ void httpd(void)
pthread_create(&threads[0], NULL, background_thread, NULL);
/* the rest of threads are for job processing */
+ char *ptr = (char *) 0x1;
for (n = 1; n < n_threads; n++)
- pthread_create(&threads[n], NULL, job_thread, (void *)(long long)n);
+ pthread_create(&threads[n], NULL, job_thread, ptr++);
if (setjmp(on_break) == 0) {
for (;;) {