[svn] - fix dereference problems with not widely used polling engines

This commit is contained in:
nenolod 2007-07-07 01:08:23 -07:00
parent b076458c6f
commit efb1d08613
4 changed files with 18 additions and 4 deletions

View File

@ -1,3 +1,12 @@
nenolod 2007/07/06 07:56:14 UTC (20070706-3526)
Log:
- forgot to do something
Changes: Modified:
+3 -0 trunk/extensions/ip_cloaking.c (File Modified)
nenolod 2007/07/06 07:54:54 UTC (20070706-3524) nenolod 2007/07/06 07:54:54 UTC (20070706-3524)
Log: Log:
- fix a possible problem with ipv6 - fix a possible problem with ipv6

View File

@ -1 +1 @@
#define SERNO "20070706-3524" #define SERNO "20070706-3526"

View File

@ -22,7 +22,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA * USA
* *
* $Id: poll.c 3354 2007-04-03 09:21:31Z nenolod $ * $Id: poll.c 3528 2007-07-07 08:08:23Z nenolod $
*/ */
#include "config.h" #include "config.h"
@ -128,6 +128,9 @@ poll_update_pollfds(int fd, short event, PF * handler)
resize_poll_array(fd); resize_poll_array(fd);
if (F == NULL)
F = comm_add_fd(fd);
if(F->comm_index < 0) if(F->comm_index < 0)
F->comm_index = poll_findslot(); F->comm_index = poll_findslot();

View File

@ -22,7 +22,7 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
* USA * USA
* *
* $Id: select.c 3354 2007-04-03 09:21:31Z nenolod $ * $Id: select.c 3528 2007-07-07 08:08:23Z nenolod $
*/ */
#include "config.h" #include "config.h"
@ -104,7 +104,9 @@ comm_setselect(int fd, fdlist_t list, unsigned int type, PF * handler,
{ {
fde_t *F = comm_locate_fd(fd); fde_t *F = comm_locate_fd(fd);
s_assert(fd >= 0); s_assert(fd >= 0);
s_assert(F->flags.open);
if (!F)
F = comm_add_fd(fd);
if(type & COMM_SELECT_READ) if(type & COMM_SELECT_READ)
{ {