From: ian Date: Wed, 16 Apr 2014 23:47:02 +0000 (+0000) Subject: FOUND on davenant X-Git-Tag: cvs-to-git-conversion~1 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=adns.git;a=commitdiff_plain;h=e22eb8c7e434da83b8fae9bd6937a79fe86836de FOUND on davenant /u/ian/things/Adns/adns -rw-rw-r-- 1 ian ian 12465 Oct 18 2006 client/adnsresfilter.c --- diff --git a/client/adnsresfilter.c b/client/adnsresfilter.c index c534f7d..7632ee3 100644 --- a/client/adnsresfilter.c +++ b/client/adnsresfilter.c @@ -48,8 +48,7 @@ struct outqueuenode { struct outqueuenode *next, *back; - void *buffer; - char *textp; + char *buffer, *textp; int textlen; struct timeval printbefore; struct treething *addr; @@ -216,7 +215,8 @@ static void queueoutchar(int c) { struct outqueuenode *entry; entry= outqueue.tail; - if (!entry || entry->addr || entry->textlen >= peroutqueuenode) { + if (!entry || entry->addr || + entry->textlen >= peroutqueuenode - (entry->textp - entry->buffer)) { peroutqueuenode= !peroutqueuenode || !entry || entry->addr ? 128 : peroutqueuenode >= 1024 ? 4096 : peroutqueuenode<<2; entry= xmalloc(sizeof(*entry));