summaryrefslogtreecommitdiffstats
path: root/src/misc1.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc1.c')
-rw-r--r--src/misc1.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/misc1.c b/src/misc1.c
index fb75e19308..85ab727d32 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -2067,13 +2067,17 @@ match_user(char_u *name)
concat_str(char_u *str1, char_u *str2)
{
char_u *dest;
- size_t l = STRLEN(str1);
+ size_t l = str1 == NULL ? 0 : STRLEN(str1);
- dest = alloc(l + STRLEN(str2) + 1L);
+ dest = alloc(l + (str2 == NULL ? 0 : STRLEN(str2)) + 1L);
if (dest != NULL)
{
- STRCPY(dest, str1);
- STRCPY(dest + l, str2);
+ if (str1 == NULL)
+ *dest = NUL;
+ else
+ STRCPY(dest, str1);
+ if (str2 != NULL)
+ STRCPY(dest + l, str2);
}
return dest;
}