break;
}
ap_unescape_url(w);
- prep_string(&w, p);
+ prep_string((const char**)&w, p);
arg = (const char**)apr_array_push(args);
*arg = ap_escape_shell_cmd(p, w);
}
break;
}
ap_unescape_url(w);
- prep_string(&w, p);
+ prep_string((const char**)&w, p);
arg = (const char**)apr_array_push(args);
*arg = ap_escape_shell_cmd(p, w);
}
static apr_thread_mutex_t *qlock;
static winnt_conn_ctx_t *qhead = NULL;
static winnt_conn_ctx_t *qtail = NULL;
-static int num_completion_contexts = 0;
-static int max_num_completion_contexts = 0;
+static apr_uint32_t num_completion_contexts = 0;
+static apr_uint32_t max_num_completion_contexts = 0;
static HANDLE ThreadDispatchIOCP = NULL;
static HANDLE qwait_event = NULL;
* Main entry point for the worker threads. Worker threads block in
* win*_get_connection() awaiting a connection to service.
*/
-static unsigned int __stdcall worker_main(void *thread_num_val)
+static DWORD __stdcall worker_main(void *thread_num_val)
{
static int requests_this_child = 0;
winnt_conn_ctx_t *context = NULL;
*/
static void create_listener_thread()
{
- int tid;
+ unsigned tid;
int num_listeners = 0;
/* Start an accept thread per listener
* XXX: Why would we have a NULL sd in our listeners?
int watch_thread;
int time_remains;
int cld;
- int tid;
+ DWORD tid;
int rv;
int i;
env[envc] = pidbuf;
env[envc + 1] = NULL;
- rv = apr_proc_create(&new_child, cmd, args, env, attr, ptemp);
+ rv = apr_proc_create(&new_child, cmd, (const char * const *)args,
+ (const char * const *)env, attr, ptemp);
if (rv != APR_SUCCESS) {
ap_log_error(APLOG_MARK, APLOG_CRIT, rv, ap_server_conf,
"Parent: Failed to create the child process.");