sha1_object_info_extended(): add an "unsigned flags" parameter
This parameter is not used yet, but it will be used to tell sha1_object_info_extended() if it should perform object replacement or not. Signed-off-by: Christian Couder <chriscool@tuxfamily.org> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
bf93eea0f6
commit
de7b5d6218
@ -238,7 +238,7 @@ static int batch_one_object(const char *obj_name, struct batch_options *opt,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (sha1_object_info_extended(data->sha1, &data->info) < 0) {
|
if (sha1_object_info_extended(data->sha1, &data->info, LOOKUP_REPLACE_OBJECT) < 0) {
|
||||||
printf("%s missing\n", obj_name);
|
printf("%s missing\n", obj_name);
|
||||||
fflush(stdout);
|
fflush(stdout);
|
||||||
return 0;
|
return 0;
|
||||||
|
2
cache.h
2
cache.h
@ -1104,7 +1104,7 @@ struct object_info {
|
|||||||
} packed;
|
} packed;
|
||||||
} u;
|
} u;
|
||||||
};
|
};
|
||||||
extern int sha1_object_info_extended(const unsigned char *, struct object_info *);
|
extern int sha1_object_info_extended(const unsigned char *, struct object_info *, unsigned flags);
|
||||||
|
|
||||||
/* Dumb servers support */
|
/* Dumb servers support */
|
||||||
extern int update_server_info(int);
|
extern int update_server_info(int);
|
||||||
|
@ -2514,7 +2514,7 @@ static int sha1_loose_object_info(const unsigned char *sha1,
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
int sha1_object_info_extended(const unsigned char *sha1, struct object_info *oi)
|
int sha1_object_info_extended(const unsigned char *sha1, struct object_info *oi, unsigned flags)
|
||||||
{
|
{
|
||||||
struct cached_object *co;
|
struct cached_object *co;
|
||||||
struct pack_entry e;
|
struct pack_entry e;
|
||||||
@ -2548,7 +2548,7 @@ int sha1_object_info_extended(const unsigned char *sha1, struct object_info *oi)
|
|||||||
rtype = packed_object_info(e.p, e.offset, oi);
|
rtype = packed_object_info(e.p, e.offset, oi);
|
||||||
if (rtype < 0) {
|
if (rtype < 0) {
|
||||||
mark_bad_packed_object(e.p, sha1);
|
mark_bad_packed_object(e.p, sha1);
|
||||||
return sha1_object_info_extended(sha1, oi);
|
return sha1_object_info_extended(sha1, oi, 0);
|
||||||
} else if (in_delta_base_cache(e.p, e.offset)) {
|
} else if (in_delta_base_cache(e.p, e.offset)) {
|
||||||
oi->whence = OI_DBCACHED;
|
oi->whence = OI_DBCACHED;
|
||||||
} else {
|
} else {
|
||||||
@ -2570,7 +2570,7 @@ int sha1_object_info(const unsigned char *sha1, unsigned long *sizep)
|
|||||||
|
|
||||||
oi.typep = &type;
|
oi.typep = &type;
|
||||||
oi.sizep = sizep;
|
oi.sizep = sizep;
|
||||||
if (sha1_object_info_extended(sha1, &oi) < 0)
|
if (sha1_object_info_extended(sha1, &oi, LOOKUP_REPLACE_OBJECT) < 0)
|
||||||
return -1;
|
return -1;
|
||||||
return type;
|
return type;
|
||||||
}
|
}
|
||||||
|
@ -113,7 +113,7 @@ static enum input_source istream_source(const unsigned char *sha1,
|
|||||||
|
|
||||||
oi->typep = type;
|
oi->typep = type;
|
||||||
oi->sizep = &size;
|
oi->sizep = &size;
|
||||||
status = sha1_object_info_extended(sha1, oi);
|
status = sha1_object_info_extended(sha1, oi, 0);
|
||||||
if (status < 0)
|
if (status < 0)
|
||||||
return stream_error;
|
return stream_error;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user