diff --git a/winsup/cygwin/ChangeLog b/winsup/cygwin/ChangeLog index 566389dfb..4d56d1731 100644 --- a/winsup/cygwin/ChangeLog +++ b/winsup/cygwin/ChangeLog @@ -1,3 +1,10 @@ +2002-08-06 Conrad Scott + + * debug.h (handle_list::allocated): Remove field. + * debug.cc (newh): Don't malloc extra entries. + (add_handle): Downgrade strace message level. + (delete_handle): Remove case for `allocated' entries. + 2002-08-05 Christopher Faylor * cygthread.cc (cygthread::stub): Change event creation to manual diff --git a/winsup/cygwin/debug.cc b/winsup/cygwin/debug.cc index 280cbb44d..418f35510 100644 --- a/winsup/cygwin/debug.cc +++ b/winsup/cygwin/debug.cc @@ -101,17 +101,9 @@ newh () for (hl = cygheap->debug.freeh; hl < cygheap->debug.freeh + NFREEH; hl++) if (hl->name == NULL) - goto out; + return hl; - /* All used up??? */ - if ((hl = (handle_list *) malloc (sizeof *hl)) != NULL) - { - memset (hl, 0, sizeof (*hl)); - hl->allocated = TRUE; - } - -out: - return hl; + return NULL; } /* Add a handle to the linked list of known handles. */ @@ -136,8 +128,8 @@ add_handle (const char *func, int ln, HANDLE h, const char *name, bool inh) if ((hl = newh ()) == NULL) { here.unlock (); - system_printf ("couldn't allocate memory for %s(%d): %s(%p)", - func, ln, name, h); + debug_printf ("couldn't allocate memory for %s(%d): %s(%p)", + func, ln, name, h); return; } hl->h = h; @@ -160,10 +152,7 @@ delete_handle (handle_list *hl) handle_list *hnuke = hl->next; debug_printf ("nuking handle '%s'", hnuke->name); hl->next = hl->next->next; - if (hnuke->allocated) - free (hnuke); - else - memset (hnuke, 0, sizeof (*hnuke)); + memset (hnuke, 0, sizeof (*hnuke)); } void diff --git a/winsup/cygwin/debug.h b/winsup/cygwin/debug.h index 56c922d60..09a74e917 100644 --- a/winsup/cygwin/debug.h +++ b/winsup/cygwin/debug.h @@ -81,7 +81,6 @@ extern int pinger; struct handle_list { - BOOL allocated; HANDLE h; const char *name; const char *func;