97f5d544创建于 2022年9月19日历史提交
--- src/confuse.c
+++ src/confuse.c
@@ -1865,16 +1865,19 @@
 		} else {
 			/* ~user or ~user/path */
 			char *user;
+                       size_t len;
 
 			file = strchr(filename, '/');
 			if (file == 0)
 				file = filename + strlen(filename);
 
-			user = malloc(file - filename);
-			if (!user)
+			len = file - filename - 1;
+                       user = malloc(len + 1);
+                       if (!user)
 				return NULL;
 
-			strncpy(user, filename + 1, file - filename - 1);
+			strncpy(user, &filename[1], len);
+                       user[len] = 0;
 			passwd = getpwnam(user);
 			free(user);
 		}