revert(3p/git): Revert merge of git upstream at v2.26.2
This causes cgit to serve error pages, which is undesirable. This reverts commit5229c9b232, reversing changes made tof2b211131f.
This commit is contained in:
parent
6f8fbf4aa4
commit
93ba78d6f4
1006 changed files with 60537 additions and 148724 deletions
49
third_party/git/convert.c
vendored
49
third_party/git/convert.c
vendored
|
|
@ -8,7 +8,6 @@
|
|||
#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.
|
||||
|
|
@ -270,12 +269,8 @@ static int will_convert_lf_to_crlf(struct text_stat *stats,
|
|||
static int validate_encoding(const char *path, const char *enc,
|
||||
const char *data, size_t len, int die_on_error)
|
||||
{
|
||||
const char *stripped;
|
||||
|
||||
/* We only check for UTF here as UTF?? can be an alias for UTF-?? */
|
||||
if (skip_iprefix(enc, "UTF", &stripped)) {
|
||||
skip_prefix(stripped, "-", &stripped);
|
||||
|
||||
if (istarts_with(enc, "UTF")) {
|
||||
/*
|
||||
* Check for detectable errors in UTF encodings
|
||||
*/
|
||||
|
|
@ -289,10 +284,15 @@ static int validate_encoding(const char *path, const char *enc,
|
|||
*/
|
||||
const char *advise_msg = _(
|
||||
"The file '%s' contains a byte order "
|
||||
"mark (BOM). Please use UTF-%.*s as "
|
||||
"mark (BOM). Please use UTF-%s as "
|
||||
"working-tree-encoding.");
|
||||
int stripped_len = strlen(stripped) - strlen("BE");
|
||||
advise(advise_msg, path, stripped_len, stripped);
|
||||
const char *stripped = NULL;
|
||||
char *upper = xstrdup_toupper(enc);
|
||||
upper[strlen(upper)-2] = '\0';
|
||||
if (!skip_prefix(upper, "UTF-", &stripped))
|
||||
skip_prefix(stripped, "UTF", &stripped);
|
||||
advise(advise_msg, path, stripped);
|
||||
free(upper);
|
||||
if (die_on_error)
|
||||
die(error_msg, path, enc);
|
||||
else {
|
||||
|
|
@ -307,7 +307,12 @@ static int validate_encoding(const char *path, const char *enc,
|
|||
"mark (BOM). Please use UTF-%sBE or UTF-%sLE "
|
||||
"(depending on the byte order) as "
|
||||
"working-tree-encoding.");
|
||||
const char *stripped = NULL;
|
||||
char *upper = xstrdup_toupper(enc);
|
||||
if (!skip_prefix(upper, "UTF-", &stripped))
|
||||
skip_prefix(stripped, "UTF", &stripped);
|
||||
advise(advise_msg, path, stripped, stripped);
|
||||
free(upper);
|
||||
if (die_on_error)
|
||||
die(error_msg, path, enc);
|
||||
else {
|
||||
|
|
@ -412,7 +417,7 @@ static int encode_to_git(const char *path, const char *src, size_t src_len,
|
|||
if (!dst) {
|
||||
/*
|
||||
* We could add the blob "as-is" to Git. However, on checkout
|
||||
* we would try to re-encode to the original encoding. This
|
||||
* we would try to reencode to the original encoding. This
|
||||
* would fail and we would leave the user with a messed-up
|
||||
* working tree. Let's try to avoid this by screaming loud.
|
||||
*/
|
||||
|
|
@ -1146,7 +1151,7 @@ static int ident_to_worktree(const char *src, size_t len,
|
|||
/* are we "faking" in place editing ? */
|
||||
if (src == buf->buf)
|
||||
to_free = strbuf_detach(buf, NULL);
|
||||
hash_object_file(the_hash_algo, src, len, "blob", &oid);
|
||||
hash_object_file(src, len, "blob", &oid);
|
||||
|
||||
strbuf_grow(buf, len + cnt * (the_hash_algo->hexsz + 3));
|
||||
for (;;) {
|
||||
|
|
@ -1288,11 +1293,10 @@ 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) {
|
||||
|
|
@ -1335,23 +1339,6 @@ static void convert_attrs(const struct index_state *istate,
|
|||
ca->crlf_action = CRLF_AUTO_INPUT;
|
||||
}
|
||||
|
||||
void reset_parsed_attributes(void)
|
||||
{
|
||||
struct convert_driver *drv, *next;
|
||||
|
||||
attr_check_free(check);
|
||||
check = NULL;
|
||||
reset_merge_attributes();
|
||||
|
||||
for (drv = user_convert; drv; drv = next) {
|
||||
next = drv->next;
|
||||
free((void *)drv->name);
|
||||
free(drv);
|
||||
}
|
||||
user_convert = NULL;
|
||||
user_convert_tail = NULL;
|
||||
}
|
||||
|
||||
int would_convert_to_git_filter_fd(const struct index_state *istate, const char *path)
|
||||
{
|
||||
struct conv_attrs ca;
|
||||
|
|
@ -1940,7 +1927,7 @@ static struct stream_filter *ident_filter(const struct object_id *oid)
|
|||
* the contents cannot be filtered without reading the whole thing
|
||||
* in-core.
|
||||
*
|
||||
* Note that you would be crazy to set CRLF, smudge/clean or ident to a
|
||||
* Note that you would be crazy to set CRLF, smuge/clean or ident to a
|
||||
* large binary blob you would want us not to slurp into the memory!
|
||||
*/
|
||||
struct stream_filter *get_stream_filter(const struct index_state *istate,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue