Re: HEAD comm.c

From: Henrik Nordstrom <hno@dont-contact.us>
Date: Thu, 18 Apr 2002 18:08:38 +0200

Andres Kroonmaa wrote:
>
> Do I understand correctly, that HEAD is currently pretty broken
> after a flood of merges?

Could be.

> In comm.c, func commSetTimeout, we've had changes:
> commSetTimeout(int fd, int timeout, PF * handler, void *data)
> @@ -443,15 +438,16 @@
> assert(fd < Squid_MaxFD);
> F = &fd_table[fd];
> assert(F->flags.open);
> + cbdataReferenceDone(F->timeout_data);
> + F->timeout_handler = NULL;
> if (timeout < 0) {
> F->timeout_handler = NULL;
> - F->timeout_data = NULL;
> return F->timeout = 0;
> }
> assert(handler || F->timeout_handler);
> if (handler || data) {
> F->timeout_handler = handler;
> - F->timeout_data = data;
> + F->timeout_data = cbdataReference(data);
> }
> return F->timeout = squid_curtime + (time_t) timeout;
> }
>
> we often call commSetTimeout(fd, Config.Timeout.read, NULL, NULL);
> and this triggers "assert(handler || F->timeout_handler);" now.

Right. My error. I misread this as clearing the timeouts when it's
purpose actually is to extend the existing timeout.

> would this be correct way to fix it?

Not correct, but it probably works..

Committing a correct fix now.

Regards
Henrik
Received on Thu Apr 18 2002 - 10:29:19 MDT

This archive was generated by hypermail pre-2.1.9 : Tue Dec 09 2003 - 16:15:12 MST