lstat_cache(): print a warning if doing ping-pong between cache types
[gitweb.git] / builtin-symbolic-ref.c
index bfc78bb3f6eff2f8e39649b9649ae7263f143ad9..cafc4eba7cc0f8e2c89d49403b56bb746fe14545 100644 (file)
@@ -44,6 +44,9 @@ int cmd_symbolic_ref(int argc, const char **argv, const char *prefix)
                check_symref(argv[0], quiet);
                break;
        case 2:
+               if (!strcmp(argv[0], "HEAD") &&
+                   prefixcmp(argv[1], "refs/heads/"))
+                       die("Refusing to point HEAD outside of refs/heads/");
                create_symref(argv[0], argv[1], msg);
                break;
        default: