Junio C Hamano <gitster@xxxxxxxxx> 于2021年7月2日周五 上午4:11写道: > > "ZheNing Hu via GitGitGadget" <gitgitgadget@xxxxxxxxx> writes: > > > From: ZheNing Hu <adlternative@xxxxxxxxx> > > > > After cat-file reuses the ref-filter logic, we re-implement the > > functions of --textconv and --filters options. > > > > Add members `use_textconv` and `use_filters` in struct `ref_format`, > > and use global variables `use_filters` and `use_textconv` in > > `ref-filter.c`, so that we can filter the content of the object > > in get_object(). > > These global variables are problematic. The places that check them > are quite isolated, and it makes me wonder why we cannot pass a > format instance through the callchain down to get_object(). If we pass such two options In such a deep call chain, it seems not worth to do it. format_ref_array_item()->get_ref_atom_value()->populate_value()-->get_object() But if we puts them in struct ref_array_item, It may be a solution, but it may not be very good. Or just use "static" prefix? > > Thanks. -- ZheNing Hu