Archived
14
0
Fork 0

Merged revisions 285962 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r285962 | tilghman | 2010-09-10 00:32:18 -0500 (Fri, 10 Sep 2010) | 13 lines
  
  Merged revisions 285961 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r285961 | tilghman | 2010-09-10 00:31:31 -0500 (Fri, 10 Sep 2010) | 6 lines
    
    Another fix for Mac OS X.
    
    While trying to fix this the "right" way, I wandered into dependency hell.  Two
    hours later, I backed out, and just removed the offending code.  ast_inline_api
    only goes one level deep and then it breaks.  Ouch.
  ........
................


git-svn-id: http://svn.digium.com/svn/asterisk/trunk@285963 f38db490-d61c-443f-a65b-d21fe96a405b
This commit is contained in:
tilghman 2010-09-10 05:33:04 +00:00
parent 6bc7f4aae7
commit 6e20a97774

View file

@ -23,10 +23,11 @@
#ifndef __AST_SELECT_H
#define __AST_SELECT_H
#include "asterisk/autoconfig.h"
#include <sys/time.h>
#include <sys/select.h>
#include <errno.h>
#include "asterisk/utils.h"
#include "asterisk/compat.h"
#ifdef __cplusplus
extern "C" {
@ -57,7 +58,7 @@ typedef struct {
if (fd / sizeof(*bytes) + ((fd + 1) % sizeof(*bytes) ? 1 : 0) < sizeof(*(fds))) { \
bytes[fd / (sizeof(*bytes) * 8)] |= ((TYPEOF_FD_SET_FDS_BITS) 1) << (fd % (sizeof(*bytes) * 8)); \
} else { \
ast_log(LOG_ERROR, "FD %d exceeds the maximum size of ast_fdset!\n", fd); \
fprintf(stderr, "FD %d exceeds the maximum size of ast_fdset!\n", fd); \
} \
} while (0)
#endif /* HAVE_VARIABLE_FDSET */
@ -75,12 +76,9 @@ typedef struct {
static inline int ast_select(int nfds, ast_fdset *rfds, ast_fdset *wfds, ast_fdset *efds, struct timeval *tvp)
{
#ifdef __linux__
ast_assert((unsigned int) nfds <= ast_FD_SETSIZE);
return select(nfds, (fd_set *) rfds, (fd_set *) wfds, (fd_set *) efds, tvp);
#else
int save_errno = 0;
ast_assert((unsigned int) nfds <= ast_FD_SETSIZE);
if (tvp) {
struct timeval tv, tvstart, tvend, tvlen;
int res;