bnicholes    01/10/05 09:57:40

  Modified:    threadproc/netware thread.c
  Log:
  Fixed NetWare thread handling so that it can deal with multiple argument
  thread functions
  
  Revision  Changes    Path
  1.6       +11 -2     apr/threadproc/netware/thread.c
  
  Index: thread.c
  ===================================================================
  RCS file: /home/cvs/apr/threadproc/netware/thread.c,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- thread.c  2001/10/04 00:06:24     1.5
  +++ thread.c  2001/10/05 16:57:40     1.6
  @@ -89,6 +89,12 @@
       return APR_NOTDETACH;
   }
   
  +static void *dummy_worker(void *opaque)
  +{
  +    apr_thread_t *thd = (apr_thread_t *)opaque;
  +    return thd->func(thd, thd->data);
  +}
  +
   apr_status_t apr_thread_create(apr_thread_t **new,
                                                                                
        apr_threadattr_t *attr, 
                                                                
apr_thread_start_t func,
  @@ -123,6 +129,9 @@
       }
       
       (*new)->cntxt = cont;
  +    (*new)->data = data;
  +    (*new)->func = func;
  +    (*new)->thread_name = (char*)apr_pstrdup(cont, threadName);
       
       stat = apr_pool_create(&(*new)->cntxt, cont);
       if (stat != APR_SUCCESS) {
  @@ -134,8 +143,8 @@
       }
       
       (*new)->ctx = NXContextAlloc(
  -     /* void(*start_routine)(void *arg)*/(void (*)(void *)) func,
  -             /* void *arg */                                                 
                           data,
  +     /* void(*start_routine)(void *arg)*/(void (*)(void *)) dummy_worker,
  +             /* void *arg */                                                 
                           (*new),
                /* int priority */                                              
                           NX_PRIO_MED,
                /* NXSize_t stackSize */                                        
                   stack_size,
                /* long flags */                                                
                           NX_CTX_NORMAL,
  
  
  

Reply via email to