You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by Ben Laurie <be...@hyperreal.com> on 1997/06/16 00:27:14 UTC

cvs commit: apache/src http_main.c multithread.h

ben         97/06/15 15:27:14

  Modified:    src       http_main.c multithread.h
  Log:
  Recover from the NT Experience.
  
  Revision  Changes    Path
  1.151     +8 -8      apache/src/http_main.c
  
  Index: http_main.c
  ===================================================================
  RCS file: /export/home/cvs/apache/src/http_main.c,v
  retrieving revision 1.150
  retrieving revision 1.151
  diff -C3 -r1.150 -r1.151
  *** http_main.c	1997/06/15 19:22:26	1.150
  --- http_main.c	1997/06/15 22:27:12	1.151
  ***************
  *** 166,172 ****
    /* *Non*-shared http_main globals... */
    
    server_rec *server_conf;
  ! JMP_BUF __declspec( thread ) jmpbuffer;
    int sd;
    static fd_set listenfds;
    static int listenmaxfd;
  --- 166,172 ----
    /* *Non*-shared http_main globals... */
    
    server_rec *server_conf;
  ! JMP_BUF APACHE_TLS jmpbuffer;
    int sd;
    static fd_set listenfds;
    static int listenmaxfd;
  ***************
  *** 351,361 ****
     * one timeout in progress at a time...
     */
    
  ! static  __declspec( thread ) conn_rec * current_conn;
  ! static __declspec( thread ) request_rec *timeout_req;
  ! static __declspec( thread ) char *timeout_name = NULL;
  ! static __declspec( thread ) int alarms_blocked = 0;
  ! static __declspec( thread ) int alarm_pending = 0;
    
    #ifndef NO_USE_SIGACTION
    /*
  --- 351,361 ----
     * one timeout in progress at a time...
     */
    
  ! static APACHE_TLS conn_rec * current_conn;
  ! static APACHE_TLS request_rec *timeout_req;
  ! static APACHE_TLS char *timeout_name = NULL;
  ! static APACHE_TLS int alarms_blocked = 0;
  ! static APACHE_TLS int alarm_pending = 0;
    
    #ifndef NO_USE_SIGACTION
    /*
  ***************
  *** 457,465 ****
    }
    
    
  ! static __declspec( thread ) void (*alarm_fn)(int) = NULL;
    #ifdef WIN32
  ! static __declspec( thread ) unsigned int alarm_expiry_time = 0;
    #endif /* WIN32 */
    
    unsigned int
  --- 457,465 ----
    }
    
    
  ! static APACHE_TLS void (*alarm_fn)(int) = NULL;
    #ifdef WIN32
  ! static APACHE_TLS unsigned int alarm_expiry_time = 0;
    #endif /* WIN32 */
    
    unsigned int
  
  
  
  1.2       +17 -10    apache/src/multithread.h
  
  Index: multithread.h
  ===================================================================
  RCS file: /export/home/cvs/apache/src/multithread.h,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -C3 -r1.1 -r1.2
  *** multithread.h	1997/06/15 19:22:33	1.1
  --- multithread.h	1997/06/15 22:27:12	1.2
  ***************
  *** 1,25 ****
    #ifndef MULTITHREAD_H
    #define MULTITHREAD_H
    
  - #include "conf.h"
  - 
    #define MULTI_OK (0)
    #define MULTI_TIMEOUT (1)
    #define MULTI_ERR (2)
    
  - /*
  -  * Ambarish: Need to do the right stuff on multi-threaded unix
  -  * I believe this is terribly ugly
  -  */
  - #ifndef MULTITHREAD
  - #define __declspec( thread )
  - #endif /* ndef MULTITHREAD */
  - 
    typedef void mutex;
    typedef void semaphore;
    typedef void thread;
    typedef void event;
    
    
    thread *create_thread(void (thread_fn)(void *thread_arg), void *thread_arg);
    int kill_thread(thread *thread_id);
  --- 1,21 ----
    #ifndef MULTITHREAD_H
    #define MULTITHREAD_H
    
    #define MULTI_OK (0)
    #define MULTI_TIMEOUT (1)
    #define MULTI_ERR (2)
    
    typedef void mutex;
    typedef void semaphore;
    typedef void thread;
    typedef void event;
    
  + /*
  +  * Ambarish: Need to do the right stuff on multi-threaded unix
  +  * I believe this is terribly ugly
  +  */
  + #ifdef MULTITHREAD
  + #define APACHE_TLS __declspec( thread )
    
    thread *create_thread(void (thread_fn)(void *thread_arg), void *thread_arg);
    int kill_thread(thread *thread_id);
  ***************
  *** 46,51 ****
  --- 42,58 ----
    int set_event(event *event_id);
    int reset_event(event *event_id);
    void destroy_event(event *event_id);
  + 
  + #else /* ndef MULTITHREAD */
  + 
  + #define APACHE_TLS
  + /* Only define the ones actually used, for now */
  + #define create_mutex(name)	NULL
  + #define acquire_mutex(mutex_id)	MULTI_OK
  + #define release_mutex(mutex_id)	MULTI_OK
  + 
  + 
  + #endif /* ndef MULTITHREAD */
    
    #endif /* ndef MULTITHREAD_H */