Author: pfg
Date: Thu Feb  5 23:02:43 2015
New Revision: 278301
URL: https://svnweb.freebsd.org/changeset/base/278301

Log:
  tdelete(3): don't delete the node we are about to return.
  
  CID:          272528
  Obtained from:        NetBSD (CVS rev. 1.4)
  MFC after:    2 weeks

Modified:
  head/lib/libc/stdlib/tdelete.c

Modified: head/lib/libc/stdlib/tdelete.c
==============================================================================
--- head/lib/libc/stdlib/tdelete.c      Thu Feb  5 22:54:31 2015        
(r278300)
+++ head/lib/libc/stdlib/tdelete.c      Thu Feb  5 23:02:43 2015        
(r278301)
@@ -65,7 +65,8 @@ tdelete(const void * __restrict vkey, vo
                        q->rlink = (*rootp)->rlink;
                }
        }
-       free(*rootp);                           /* D4: Free node */
+       if (p != *rootp)
+               free(*rootp);                   /* D4: Free node */
        *rootp = q;                             /* link parent to new node */
        return p;
 }
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to