Hi brian,

[chiming in from the peanut gallery; if my comments don't make any
sense, please do feel free to completely ignore me.]

On Sun, 25 Aug 2019, brian m. carlson wrote:

> diff --git a/convert.c b/convert.c
> index 94ff837649..0e6e9d2d75 100644
> --- a/convert.c
> +++ b/convert.c
> @@ -8,6 +8,7 @@
>  #include "pkt-line.h"
>  #include "sub-process.h"
>  #include "utf8.h"
> +#include "ll-merge.h"
>
>  /*
>   * convert.c - convert a file when checking it out and checking it in.
> @@ -1293,10 +1294,11 @@ struct conv_attrs {
>       const char *working_tree_encoding; /* Supported encoding or default 
> encoding if NULL */
>  };
>
> +static struct attr_check *check;
> +
>  static void convert_attrs(const struct index_state *istate,
>                         struct conv_attrs *ca, const char *path)
>  {
> -     static struct attr_check *check;
>       struct attr_check_item *ccheck = NULL;
>
>       if (!check) {

After this line:

                check = attr_check_initl("crlf", "ident", "filter",
                                "eol", "text", "working-tree-encoding",
                                NULL);
                user_convert_tail = &user_convert;
                git_config(read_convert_config, NULL);
        }

I am a bit worried about `user_convert`: it seems never to be re-set.

Also, how thread-safe do we need `reset_parsed_attributes()` to be?

Ciao,
Dscho

Reply via email to