Bug in utoi(), which made it ignore a leading minus sign when
[sgt/halibut] / malloc.c
index 1635b47..4389d8a 100644 (file)
--- a/malloc.c
+++ b/malloc.c
@@ -91,7 +91,7 @@ void *(srealloc)(LOGPARAMS void *p, int size) {
  * dupstr is like strdup, but with the never-return-NULL property
  * of smalloc (and also reliably defined in all environments :-)
  */
-char *dupstr(char *s) {
+char *dupstr(char const *s) {
     char *r = smalloc(1+strlen(s));
     strcpy(r,s);
     return r;
@@ -101,10 +101,10 @@ char *dupstr(char *s) {
  * Duplicate a linked list of words
  */
 word *dup_word_list(word *w) {
-    word *head, **eptr = &head;
+    word *head = NULL, **eptr = &head;
 
     while (w) {
-       word *newwd = mknew(word);
+       word *newwd = snew(word);
        *newwd = *w;                   /* structure copy */
        newwd->text = ustrdup(w->text);
        if (w->alt)