Don't underflow datagram_address array

This commit is contained in:
Daniel Colascione 2014-03-22 22:15:48 -07:00
parent 13539621ff
commit 3768a86998
2 changed files with 9 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2014-03-23 Daniel Colascione <dancol@dancol.org>
* process.c (DATAGRAM_CONN_P): Don't underflow datagram_address
array. (ASAN caught.)
2014-03-22 Glenn Morris <rgm@gnu.org>
* callproc.c (init_callproc): In etc, look for NEWS rather than GNU.

View file

@ -353,7 +353,10 @@ static struct sockaddr_and_len {
int len;
} datagram_address[FD_SETSIZE];
#define DATAGRAM_CHAN_P(chan) (datagram_address[chan].sa != 0)
#define DATAGRAM_CONN_P(proc) (PROCESSP (proc) && datagram_address[XPROCESS (proc)->infd].sa != 0)
#define DATAGRAM_CONN_P(proc) \
(PROCESSP (proc) && \
XPROCESS (proc)->infd >= 0 && \
datagram_address[XPROCESS (proc)->infd].sa != 0)
#else
#define DATAGRAM_CHAN_P(chan) (0)
#define DATAGRAM_CONN_P(proc) (0)