(meant to follow up on the list... darn!)
--- Begin Message ---
Cliff Woolley <[EMAIL PROTECTED]> writes:
> Just a heads up on some warnings I'm getting on Solaris 2.6 where
> APR_USE_PROC_PTHREAD_SERIALIZE is selected:
>
> locks.c: In function `apr_os_lock_get':
> locks.c:344: warning: assignment makes pointer from integer without a cast
> locks.c: In function `apr_os_lock_put':
> locks.c:365: warning: assignment makes integer from pointer without a cast
>
> The problem is that (after macro substitution) my apr_os_lock_t looks like
> this:
>
> struct apr_os_lock_t {
> pthread_mutex_t *crossproc;
> pthread_mutex_t *intraproc;
> };
>
> And apr_os_lock_get/put assume that crossproc will be an int (as it is
> with the other serialize methods).
>
> I'd work on this, but it'd probably be easier for somebody who's spent
> more time in the locking code than I have...
I suspect that apr_os_lock_t on Unix needs to look like this...
struct apr_os_lock_t {
#if APR_HAS_PROC_PTHREAD_SERIALIZE
pthread_mutex_t *pthread_crossproc; /* NULL if not used */
#endif
#if APR_HAS_SYSVSEM_SERIALIZE || APR_HAS_FCNTL_SERIALIZE ||
APR_HAS_FLOCK_SERIALIZE
int int_crossproc; /* -1 if not used */
#endif
#if APR_USE_PTHREAD_SERIALIZE
pthread_mutex_t *pthread_intraproc; /* NULL if not used */
#endif
};
In create_lock(), initialize as follows before filling in any lock handles:
#if APR_HAS_PROC_PTHREAD_SERIALIZE
new->pthread_interproc = NULL;
#endif
#if APR_HAS_SYSVSEM_SERIALIZE || APR_HAS_FCNTL_SERIALIZE ||
APR_HAS_FLOCK_SERIALIZE
new->interproc = -1;
#endif
#if APR_USE_PTHREAD_SERIALIZE
new->intraproc = NULL;
#endif
in apr_os_lock_get():
#if APR_HAS_PROC_PTHREAD_SERIALIZE
os->pthread_crossproc = lock->pthread_interproc;
#endif
#if APR_HAS_SYSVSEM_SERIALIZE || APR_HAS_FCNTL_SERIALIZE ||
APR_HAS_FLOCK_SERIALIZE
os->int_crossproc = lock->interproc;
#endif
#if APR_USE_PTHREAD_SERIALIZE
os->pthread_intraproc = lock->intraproc;
#endif
--
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
http://www.geocities.com/SiliconValley/Park/9289/
Born in Roswell... married an alien...
--- End Message ---
--
Jeff Trawick | [EMAIL PROTECTED] | PGP public key at web site:
http://www.geocities.com/SiliconValley/Park/9289/
Born in Roswell... married an alien...