]> git.ipfire.org Git - thirdparty/git.git/blobdiff - userdiff.c
config: do not leak excludes_file
[thirdparty/git.git] / userdiff.c
index d71b82feb74704b1c6b3027f84d2d478403d6e42..58a3d59ef8f471b9c6ffc34cad10e56689c3354c 100644 (file)
@@ -170,8 +170,8 @@ PATTERNS("html",
         "[^<>= \t]+"),
 PATTERNS("java",
         "!^[ \t]*(catch|do|for|if|instanceof|new|return|switch|throw|while)\n"
-        /* Class, enum, and interface declarations */
-        "^[ \t]*(([a-z]+[ \t]+)*(class|enum|interface)[ \t]+[A-Za-z][A-Za-z0-9_$]*[ \t]+.*)$\n"
+        /* Class, enum, interface, and record declarations */
+        "^[ \t]*(([a-z-]+[ \t]+)*(class|enum|interface|record)[ \t]+.*)$\n"
         /* Method definitions; note that constructor signatures are not */
         /* matched because they are indistinguishable from method calls. */
         "^[ \t]*(([A-Za-z_<>&][][?&<>.,A-Za-z_0-9]*[ \t]+)+[A-Za-z_][A-Za-z_0-9]*[ \t]*\\([^;]*)$",
@@ -293,7 +293,7 @@ PATTERNS("scheme",
         "|([^][)(}{[ \t])+"),
 PATTERNS("tex", "^(\\\\((sub)*section|chapter|part)\\*{0,1}\\{.*)$",
         "\\\\[a-zA-Z@]+|\\\\.|[a-zA-Z0-9\x80-\xff]+"),
-{ "default", NULL, -1, { NULL, 0 } },
+{ "default", NULL, NULL, -1, { NULL, 0 } },
 };
 #undef PATTERNS
 #undef IPATTERN
@@ -394,6 +394,8 @@ int userdiff_config(const char *k, const char *v)
                return parse_bool(&drv->textconv_want_cache, k, v);
        if (!strcmp(type, "wordregex"))
                return git_config_string(&drv->word_regex, k, v);
+       if (!strcmp(type, "algorithm"))
+               return git_config_string(&drv->algorithm, k, v);
 
        return 0;
 }