]> git.deb.at Git - pkg/abook.git/blobdiff - misc.c
buffer length calculation changes
[pkg/abook.git] / misc.c
diff --git a/misc.c b/misc.c
index fa67f0c99a644942f26c2b43af43ca3f85282370..8a4b9cfc5d2657fbb8ed69076c849d88b1efa5f6 100644 (file)
--- a/misc.c
+++ b/misc.c
@@ -123,7 +123,7 @@ mkstr (const char *format, ... )
 char*
 strconcat (const char *str, ...)
 {
-       int   l;
+       unsigned long l;
        MY_VA_LOCAL_DECL;
        char *s, *concat;
 
@@ -144,6 +144,8 @@ strconcat (const char *str, ...)
 #else
        malloc(l);
 #endif
+       if(concat == NULL)
+               return NULL;
 
        strcpy (concat, str);
        MY_VA_START(str);
@@ -190,6 +192,8 @@ my_getcwd()
 
        if( (dir = (char *)malloc(size)) == NULL)
                return NULL;
+
+       *dir = 0;
        
        while( getcwd(dir, size) == NULL && errno == ERANGE )
                if( (dir = (char *)realloc(dir, size *=2)) == NULL)