mirror of
https://github.com/git/git.git
synced 2024-11-24 18:33:43 +08:00
upload-pack: use skip_prefix() instead of starts_with()
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
873700c92e
commit
8bf3b75841
@ -276,7 +276,7 @@ static void create_pack_file(void)
|
||||
die("git upload-pack: %s", abort_msg);
|
||||
}
|
||||
|
||||
static int got_sha1(char *hex, unsigned char *sha1)
|
||||
static int got_sha1(const char *hex, unsigned char *sha1)
|
||||
{
|
||||
struct object *o;
|
||||
int we_knew_they_have = 0;
|
||||
@ -382,6 +382,8 @@ static int get_common_commits(void)
|
||||
|
||||
for (;;) {
|
||||
char *line = packet_read_line(0, NULL);
|
||||
const char *arg;
|
||||
|
||||
reset_timeout();
|
||||
|
||||
if (!line) {
|
||||
@ -403,8 +405,8 @@ static int get_common_commits(void)
|
||||
got_other = 0;
|
||||
continue;
|
||||
}
|
||||
if (starts_with(line, "have ")) {
|
||||
switch (got_sha1(line+5, sha1)) {
|
||||
if (skip_prefix(line, "have ", &arg)) {
|
||||
switch (got_sha1(arg, sha1)) {
|
||||
case -1: /* they have what we do not */
|
||||
got_other = 1;
|
||||
if (multi_ack && ok_to_give_up()) {
|
||||
@ -620,14 +622,16 @@ static void receive_needs(void)
|
||||
const char *features;
|
||||
unsigned char sha1_buf[20];
|
||||
char *line = packet_read_line(0, NULL);
|
||||
const char *arg;
|
||||
|
||||
reset_timeout();
|
||||
if (!line)
|
||||
break;
|
||||
|
||||
if (starts_with(line, "shallow ")) {
|
||||
if (skip_prefix(line, "shallow ", &arg)) {
|
||||
unsigned char sha1[20];
|
||||
struct object *object;
|
||||
if (get_sha1_hex(line + 8, sha1))
|
||||
if (get_sha1_hex(arg, sha1))
|
||||
die("invalid shallow line: %s", line);
|
||||
object = parse_object(sha1);
|
||||
if (!object)
|
||||
@ -640,19 +644,19 @@ static void receive_needs(void)
|
||||
}
|
||||
continue;
|
||||
}
|
||||
if (starts_with(line, "deepen ")) {
|
||||
if (skip_prefix(line, "deepen ", &arg)) {
|
||||
char *end;
|
||||
depth = strtol(line + 7, &end, 0);
|
||||
if (end == line + 7 || depth <= 0)
|
||||
depth = strtol(arg, &end, 0);
|
||||
if (end == arg || depth <= 0)
|
||||
die("Invalid deepen: %s", line);
|
||||
continue;
|
||||
}
|
||||
if (!starts_with(line, "want ") ||
|
||||
get_sha1_hex(line+5, sha1_buf))
|
||||
if (!skip_prefix(line, "want ", &arg) ||
|
||||
get_sha1_hex(arg, sha1_buf))
|
||||
die("git upload-pack: protocol error, "
|
||||
"expected to get sha, not '%s'", line);
|
||||
|
||||
features = line + 45;
|
||||
features = arg + 40;
|
||||
|
||||
if (parse_feature_request(features, "multi_ack_detailed"))
|
||||
multi_ack = 2;
|
||||
@ -859,7 +863,7 @@ int main(int argc, char **argv)
|
||||
check_replace_refs = 0;
|
||||
|
||||
for (i = 1; i < argc; i++) {
|
||||
char *arg = argv[i];
|
||||
const char *arg = argv[i];
|
||||
|
||||
if (arg[0] != '-')
|
||||
break;
|
||||
@ -875,8 +879,8 @@ int main(int argc, char **argv)
|
||||
strict = 1;
|
||||
continue;
|
||||
}
|
||||
if (starts_with(arg, "--timeout=")) {
|
||||
timeout = atoi(arg+10);
|
||||
if (skip_prefix(arg, "--timeout=", &arg)) {
|
||||
timeout = atoi(arg);
|
||||
daemon_mode = 1;
|
||||
continue;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user