diff -r 2251ba078bec -r eb7ce841ccec src/share/vm/memory/metaspaceShared.cpp --- a/src/share/vm/memory/metaspaceShared.cpp Sat Oct 24 16:18:50 2020 +0800 +++ b/src/share/vm/memory/metaspaceShared.cpp Sat Oct 24 16:43:47 2020 +0800 @@ -723,12 +723,15 @@ int class_list_path_len = (int)strlen(class_list_path_str); if (class_list_path_len >= 3) { if (strcmp(class_list_path_str + class_list_path_len - 3, "lib") != 0) { - strcat(class_list_path_str, os::file_separator()); - strcat(class_list_path_str, "lib"); + jio_snprintf(class_list_path_str + class_list_path_len, + sizeof(class_list_path_str) - class_list_path_len, + "%slib", os::file_separator()); + class_list_path_len += 4; } } - strcat(class_list_path_str, os::file_separator()); - strcat(class_list_path_str, "classlist"); + jio_snprintf(class_list_path_str + class_list_path_len, + sizeof(class_list_path_str) - class_list_path_len, + "%sclasslist", os::file_separator()); class_list_path = class_list_path_str; } else { class_list_path = SharedClassListFile;