[PATCH v1 0/2] environment: move excludes_file into repo_config_values
From: Tian Yuchen <hidden>
Date: 2026-06-25 16:19:02
This series continues the libification effort by migrating the global string variable 'excludes_file' into 'struct repo_config_values'. Since this is a dynamically allocated variable, the migration requires proper heap memory management. The series is structured in two commits: - Abstract the XDG fallback lazy-loading logic out of dir.c into a proper getter. - Move the variable into the struct and introducs 'repo_config_values_clear()'. Note on Submodules: A temporary shield 'if (repo != the_repository)' is included in both the getter and the clear function. This prevents uninitialized submodules from triggering the BUG() assertion. (Inspiration: [1]) Thanks. Mentored-by: Christian Couder [off-list ref] Mentored-by: Ayush Chandekar [off-list ref] Mentored-by: Olamide Caleb Bello [off-list ref] Signed-off-by: Tian Yuchen <redacted> [1] https://lore.kernel.org/git/c95a7730-7b14-4be0-a4e4-861b2f5430ea@gmail.com/ (local) Tian Yuchen (2): dir: encapsulate excludes_file lazy-load environment: move excludes_file into repo_config_values dir.c | 4 ++-- environment.c | 29 ++++++++++++++++++++++++++--- environment.h | 14 +++++++++++++- repository.c | 1 + 4 files changed, 42 insertions(+), 6 deletions(-) -- 2.43.0