Fix a very long standing bug in run_interrupt_driven_config_hooks(). It

was fetching the next pointer from memory that could have been free()'d.
This commit is contained in:
Peter Wemm 1999-04-25 22:13:34 +00:00
parent 4093b9aa2e
commit fc51d58e62
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=46076

View File

@ -41,7 +41,7 @@
*
* @(#)subr_autoconf.c 8.1 (Berkeley) 6/10/93
*
* $Id: subr_autoconf.c,v 1.9 1999/04/17 08:36:04 peter Exp $
* $Id: subr_autoconf.c,v 1.10 1999/04/17 09:12:35 peter Exp $
*/
#include <sys/param.h>
@ -66,10 +66,11 @@ static void
run_interrupt_driven_config_hooks(dummy)
void *dummy;
{
struct intr_config_hook *hook;
struct intr_config_hook *hook, *next;
for (hook = intr_config_hook_list.tqh_first; hook != NULL;
hook = hook->ich_links.tqe_next) {
hook = next) {
next = hook->ich_links.tqe_next;
(*hook->ich_func)(hook->ich_arg);
}