--- lbbs/src/main.c 2025/11/05 03:01:14 1.71 +++ lbbs/src/main.c 2025/11/08 08:21:31 1.73 @@ -7,6 +7,7 @@ */ #include "bbs.h" +#include "bwf.h" #include "common.h" #include "file_loader.h" #include "init.h" @@ -18,6 +19,7 @@ #include "user_list.h" #include #include +#include #include #include #include @@ -132,6 +134,13 @@ int main(int argc, char *argv[]) return -1; } + // Apply the specified locale + if (setlocale(LC_ALL, "en_US.UTF-8") == NULL) + { + fprintf(stderr, "setlocale(LC_ALL, en_US.UTF-8) error\n"); + return -1; + } + // Initialize log if (log_begin(LOG_FILE_INFO, LOG_FILE_ERROR) < 0) { @@ -155,6 +164,12 @@ int main(int argc, char *argv[]) return -2; } + // Load BWF config + if (bwf_load(CONF_BWF) < 0) + { + return -2; + } + // Check article cache dir ret = mkdir(VAR_ARTICLE_CACHE_DIR, 0750); if (ret == -1 && errno != EEXIST) @@ -337,6 +352,9 @@ cleanup: trie_dict_cleanup(); user_list_pool_cleanup(); + // Cleanup BWF + bwf_unload(); + if (unlink(VAR_ARTICLE_BLOCK_SHM) < 0) { log_error("unlink(%s) error\n", VAR_ARTICLE_BLOCK_SHM);