Fix missing va_end call in uip/mhmisc.c
[mmh] / sbr / lock_file.c
index 7309c86..957bc4e 100644 (file)
@@ -516,11 +516,11 @@ timerON(char *curlock, int fd)
        struct lock *lp;
        size_t len;
 
-       lp = (struct lock *) mh_xmalloc(sizeof(*lp));
+       lp = mh_xcalloc(1, sizeof(*lp));
 
        len = strlen(curlock) + 1;
        lp->l_fd = fd;
-       lp->l_lock = mh_xmalloc(len);
+       lp->l_lock = mh_xcalloc(len, sizeof(char));
        memcpy(lp->l_lock, curlock, len);
        lp->l_next = l_top;
 
@@ -557,8 +557,8 @@ timerOFF(int fd)
                        else
                                pp->l_next = lp->l_next;
 
-                       free(lp->l_lock);
-                       free(lp);
+                       mh_free0(&(lp->l_lock));
+                       mh_free0(&lp);
                }
        }