commit 2c98ee284cc81440281858351f0aa94cbca9a83c from: Stefan Sperling date: Fri Nov 29 04:35:09 2019 UTC NAME_MAX does not account for a terminating NUL commit - 38b0338bf913fd419054488e420e0aea644dcb62 commit + 2c98ee284cc81440281858351f0aa94cbca9a83c blob - 5a1c650f36934617b6944c24031c8cc6c093b572 blob + 2c568ecd216c5246df49102f9a2d25674eafd482 --- lib/got_lib_object.h +++ lib/got_lib_object.h @@ -51,7 +51,7 @@ struct got_commit_object { struct got_tree_entry { mode_t mode; - char name[NAME_MAX]; + char name[NAME_MAX + 1 /* NUL */]; struct got_object_id id; int idx; }; blob - cd56ee24ad04cda9b35ed84a84df1615626c2929 blob + b9728b4ffb0613650c0438ce082ae6194bd635cc --- lib/object_create.c +++ lib/object_create.c @@ -222,8 +222,8 @@ sort_tree_entries_the_way_git_likes_it(const void *arg { struct got_tree_entry * const *te1 = arg1; struct got_tree_entry * const *te2 = arg2; - char name1[NAME_MAX + 1]; - char name2[NAME_MAX + 1]; + char name1[NAME_MAX + 2]; + char name2[NAME_MAX + 2]; strlcpy(name1, (*te1)->name, sizeof(name1)); strlcpy(name2, (*te2)->name, sizeof(name2));