apr-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From traw...@apache.org
Subject cvs commit: apr/threadproc/unix signals.c
Date Thu, 29 Nov 2001 16:25:10 GMT
trawick     01/11/29 08:25:10

  Modified:    threadproc/unix signals.c
  Log:
  re-implement an AIX-specific workaround for a sigwait() bug to
  work with 32-bit or 64-bit builds
  
  Revision  Changes    Path
  1.38      +17 -2     apr/threadproc/unix/signals.c
  
  Index: signals.c
  ===================================================================
  RCS file: /home/cvs/apr/threadproc/unix/signals.c,v
  retrieving revision 1.37
  retrieving revision 1.38
  diff -u -r1.37 -r1.38
  --- signals.c	2001/11/16 12:14:09	1.37
  +++ signals.c	2001/11/29 16:25:10	1.38
  @@ -334,10 +334,25 @@
        * order bit of the second word of flags is turned on.  sigdelset()
        * returns an error when trying to turn this off, so we'll turn it
        * off manually.
  +     *
  +     * Note that the private fields differ between 32-bit and 64-bit
  +     * and even between _ALL_SOURCE and !_ALL_SOURCE.
        */
  -#ifdef _AIX
  -    sig_mask.hisigs &= 0x7FFFFFFF;
  +#if defined(_AIX)
  +#ifdef __64BIT__
  +#ifdef _ALL_SOURCE
  +        sig_mask.ss_set[3] &= 0x7FFFFFFF;
  +#else /* not _ALL_SOURCE */
  +        sig_mask.__ss_set[3] &= 0x7FFFFFFF;
   #endif
  +#else /* not 64-bit build */
  +#ifdef _ALL_SOURCE
  +        sig_mask.hisigs &= 0x7FFFFFFF;
  +#else /* not _ALL_SOURCE */
  +        sig_mask.__hisigs &= 0x7FFFFFFF;
  +#endif
  +#endif
  +#endif /* _AIX */
   
       while (1) {
   #if APR_HAVE_SIGWAIT
  
  
  

Mime
View raw message