http-push, http-walker: style fixes
- Use tabs to indent, instead of spaces. - Do not use curly-braces around a single statement body in if/while statement; - Do not start multi-line comment with description on the first line after "/*", i.e. /* * We prefer this over... */ /* comments like * this (notice the first line) */ Signed-off-by: Tay Ray Chuan <rctay89@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
parent
96a4f18735
commit
4c42aa1a13
48
http-push.c
48
http-push.c
@ -276,7 +276,7 @@ static size_t fwrite_sha1_file(void *ptr, size_t eltsize, size_t nmemb,
|
|||||||
struct transfer_request *request = (struct transfer_request *)data;
|
struct transfer_request *request = (struct transfer_request *)data;
|
||||||
do {
|
do {
|
||||||
ssize_t retval = xwrite(request->local_fileno,
|
ssize_t retval = xwrite(request->local_fileno,
|
||||||
(char *) ptr + posn, size - posn);
|
(char *) ptr + posn, size - posn);
|
||||||
if (retval < 0)
|
if (retval < 0)
|
||||||
return posn;
|
return posn;
|
||||||
posn += retval;
|
posn += retval;
|
||||||
@ -289,7 +289,7 @@ static size_t fwrite_sha1_file(void *ptr, size_t eltsize, size_t nmemb,
|
|||||||
request->stream.avail_out = sizeof(expn);
|
request->stream.avail_out = sizeof(expn);
|
||||||
request->zret = git_inflate(&request->stream, Z_SYNC_FLUSH);
|
request->zret = git_inflate(&request->stream, Z_SYNC_FLUSH);
|
||||||
git_SHA1_Update(&request->c, expn,
|
git_SHA1_Update(&request->c, expn,
|
||||||
sizeof(expn) - request->stream.avail_out);
|
sizeof(expn) - request->stream.avail_out);
|
||||||
} while (request->stream.avail_in && request->zret == Z_OK);
|
} while (request->stream.avail_in && request->zret == Z_OK);
|
||||||
data_received++;
|
data_received++;
|
||||||
return size;
|
return size;
|
||||||
@ -323,7 +323,8 @@ static void start_fetch_loose(struct transfer_request *request)
|
|||||||
error("fd leakage in start: %d", request->local_fileno);
|
error("fd leakage in start: %d", request->local_fileno);
|
||||||
request->local_fileno = open(request->tmpfile,
|
request->local_fileno = open(request->tmpfile,
|
||||||
O_WRONLY | O_CREAT | O_EXCL, 0666);
|
O_WRONLY | O_CREAT | O_EXCL, 0666);
|
||||||
/* This could have failed due to the "lazy directory creation";
|
/*
|
||||||
|
* This could have failed due to the "lazy directory creation";
|
||||||
* try to mkdir the last path component.
|
* try to mkdir the last path component.
|
||||||
*/
|
*/
|
||||||
if (request->local_fileno < 0 && errno == ENOENT) {
|
if (request->local_fileno < 0 && errno == ENOENT) {
|
||||||
@ -353,8 +354,10 @@ static void start_fetch_loose(struct transfer_request *request)
|
|||||||
url = get_remote_object_url(repo->url, hex, 0);
|
url = get_remote_object_url(repo->url, hex, 0);
|
||||||
request->url = xstrdup(url);
|
request->url = xstrdup(url);
|
||||||
|
|
||||||
/* If a previous temp file is present, process what was already
|
/*
|
||||||
fetched. */
|
* If a previous temp file is present, process what was already
|
||||||
|
* fetched.
|
||||||
|
*/
|
||||||
prevlocal = open(prevfile, O_RDONLY);
|
prevlocal = open(prevfile, O_RDONLY);
|
||||||
if (prevlocal != -1) {
|
if (prevlocal != -1) {
|
||||||
do {
|
do {
|
||||||
@ -363,19 +366,20 @@ static void start_fetch_loose(struct transfer_request *request)
|
|||||||
if (fwrite_sha1_file(prev_buf,
|
if (fwrite_sha1_file(prev_buf,
|
||||||
1,
|
1,
|
||||||
prev_read,
|
prev_read,
|
||||||
request) == prev_read) {
|
request) == prev_read)
|
||||||
prev_posn += prev_read;
|
prev_posn += prev_read;
|
||||||
} else {
|
else
|
||||||
prev_read = -1;
|
prev_read = -1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} while (prev_read > 0);
|
} while (prev_read > 0);
|
||||||
close(prevlocal);
|
close(prevlocal);
|
||||||
}
|
}
|
||||||
unlink_or_warn(prevfile);
|
unlink_or_warn(prevfile);
|
||||||
|
|
||||||
/* Reset inflate/SHA1 if there was an error reading the previous temp
|
/*
|
||||||
file; also rewind to the beginning of the local file. */
|
* Reset inflate/SHA1 if there was an error reading the previous temp
|
||||||
|
* file; also rewind to the beginning of the local file.
|
||||||
|
*/
|
||||||
if (prev_read == -1) {
|
if (prev_read == -1) {
|
||||||
memset(&request->stream, 0, sizeof(request->stream));
|
memset(&request->stream, 0, sizeof(request->stream));
|
||||||
git_inflate_init(&request->stream);
|
git_inflate_init(&request->stream);
|
||||||
@ -398,8 +402,10 @@ static void start_fetch_loose(struct transfer_request *request)
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_URL, url);
|
curl_easy_setopt(slot->curl, CURLOPT_URL, url);
|
||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
||||||
|
|
||||||
/* If we have successfully processed data from a previous fetch
|
/*
|
||||||
attempt, only fetch the data we don't already have. */
|
* If we have successfully processed data from a previous fetch
|
||||||
|
* attempt, only fetch the data we don't already have.
|
||||||
|
*/
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (push_verbosely)
|
if (push_verbosely)
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
@ -514,8 +520,10 @@ static void start_fetch_packed(struct transfer_request *request)
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
||||||
slot->local = packfile;
|
slot->local = packfile;
|
||||||
|
|
||||||
/* If there is data present from a previous transfer attempt,
|
/*
|
||||||
resume where it left off */
|
* If there is data present from a previous transfer attempt,
|
||||||
|
* resume where it left off
|
||||||
|
*/
|
||||||
prev_posn = ftell(packfile);
|
prev_posn = ftell(packfile);
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (push_verbosely)
|
if (push_verbosely)
|
||||||
@ -780,7 +788,8 @@ static void finish_request(struct transfer_request *request)
|
|||||||
aborted = 1;
|
aborted = 1;
|
||||||
}
|
}
|
||||||
} else if (request->state == RUN_FETCH_LOOSE) {
|
} else if (request->state == RUN_FETCH_LOOSE) {
|
||||||
close(request->local_fileno); request->local_fileno = -1;
|
close(request->local_fileno);
|
||||||
|
request->local_fileno = -1;
|
||||||
|
|
||||||
if (request->curl_result != CURLE_OK &&
|
if (request->curl_result != CURLE_OK &&
|
||||||
request->http_code != 416) {
|
request->http_code != 416) {
|
||||||
@ -803,9 +812,8 @@ static void finish_request(struct transfer_request *request)
|
|||||||
move_temp_to_file(
|
move_temp_to_file(
|
||||||
request->tmpfile,
|
request->tmpfile,
|
||||||
request->filename);
|
request->filename);
|
||||||
if (request->rename == 0) {
|
if (request->rename == 0)
|
||||||
request->obj->flags |= (LOCAL | REMOTE);
|
request->obj->flags |= (LOCAL | REMOTE);
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1010,8 +1018,10 @@ static int fetch_index(unsigned char *sha1)
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, no_pragma_header);
|
||||||
slot->local = indexfile;
|
slot->local = indexfile;
|
||||||
|
|
||||||
/* If there is data present from a previous transfer attempt,
|
/*
|
||||||
resume where it left off */
|
* If there is data present from a previous transfer attempt,
|
||||||
|
* resume where it left off
|
||||||
|
*/
|
||||||
prev_posn = ftell(indexfile);
|
prev_posn = ftell(indexfile);
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (push_verbosely)
|
if (push_verbosely)
|
||||||
|
@ -71,7 +71,7 @@ static size_t fwrite_sha1_file(void *ptr, size_t eltsize, size_t nmemb,
|
|||||||
struct object_request *obj_req = (struct object_request *)data;
|
struct object_request *obj_req = (struct object_request *)data;
|
||||||
do {
|
do {
|
||||||
ssize_t retval = xwrite(obj_req->local,
|
ssize_t retval = xwrite(obj_req->local,
|
||||||
(char *) ptr + posn, size - posn);
|
(char *) ptr + posn, size - posn);
|
||||||
if (retval < 0)
|
if (retval < 0)
|
||||||
return posn;
|
return posn;
|
||||||
posn += retval;
|
posn += retval;
|
||||||
@ -84,7 +84,7 @@ static size_t fwrite_sha1_file(void *ptr, size_t eltsize, size_t nmemb,
|
|||||||
obj_req->stream.avail_out = sizeof(expn);
|
obj_req->stream.avail_out = sizeof(expn);
|
||||||
obj_req->zret = git_inflate(&obj_req->stream, Z_SYNC_FLUSH);
|
obj_req->zret = git_inflate(&obj_req->stream, Z_SYNC_FLUSH);
|
||||||
git_SHA1_Update(&obj_req->c, expn,
|
git_SHA1_Update(&obj_req->c, expn,
|
||||||
sizeof(expn) - obj_req->stream.avail_out);
|
sizeof(expn) - obj_req->stream.avail_out);
|
||||||
} while (obj_req->stream.avail_in && obj_req->zret == Z_OK);
|
} while (obj_req->stream.avail_in && obj_req->zret == Z_OK);
|
||||||
data_received++;
|
data_received++;
|
||||||
return size;
|
return size;
|
||||||
@ -119,7 +119,8 @@ static void start_object_request(struct walker *walker,
|
|||||||
error("fd leakage in start: %d", obj_req->local);
|
error("fd leakage in start: %d", obj_req->local);
|
||||||
obj_req->local = open(obj_req->tmpfile,
|
obj_req->local = open(obj_req->tmpfile,
|
||||||
O_WRONLY | O_CREAT | O_EXCL, 0666);
|
O_WRONLY | O_CREAT | O_EXCL, 0666);
|
||||||
/* This could have failed due to the "lazy directory creation";
|
/*
|
||||||
|
* This could have failed due to the "lazy directory creation";
|
||||||
* try to mkdir the last path component.
|
* try to mkdir the last path component.
|
||||||
*/
|
*/
|
||||||
if (obj_req->local < 0 && errno == ENOENT) {
|
if (obj_req->local < 0 && errno == ENOENT) {
|
||||||
@ -158,8 +159,10 @@ static void start_object_request(struct walker *walker,
|
|||||||
strcpy(posn, hex + 2);
|
strcpy(posn, hex + 2);
|
||||||
strcpy(obj_req->url, url);
|
strcpy(obj_req->url, url);
|
||||||
|
|
||||||
/* If a previous temp file is present, process what was already
|
/*
|
||||||
fetched. */
|
* If a previous temp file is present, process what was already
|
||||||
|
* fetched.
|
||||||
|
*/
|
||||||
prevlocal = open(prevfile, O_RDONLY);
|
prevlocal = open(prevfile, O_RDONLY);
|
||||||
if (prevlocal != -1) {
|
if (prevlocal != -1) {
|
||||||
do {
|
do {
|
||||||
@ -168,19 +171,20 @@ static void start_object_request(struct walker *walker,
|
|||||||
if (fwrite_sha1_file(prev_buf,
|
if (fwrite_sha1_file(prev_buf,
|
||||||
1,
|
1,
|
||||||
prev_read,
|
prev_read,
|
||||||
obj_req) == prev_read) {
|
obj_req) == prev_read)
|
||||||
prev_posn += prev_read;
|
prev_posn += prev_read;
|
||||||
} else {
|
else
|
||||||
prev_read = -1;
|
prev_read = -1;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} while (prev_read > 0);
|
} while (prev_read > 0);
|
||||||
close(prevlocal);
|
close(prevlocal);
|
||||||
}
|
}
|
||||||
unlink_or_warn(prevfile);
|
unlink_or_warn(prevfile);
|
||||||
|
|
||||||
/* Reset inflate/SHA1 if there was an error reading the previous temp
|
/*
|
||||||
file; also rewind to the beginning of the local file. */
|
* Reset inflate/SHA1 if there was an error reading the previous temp
|
||||||
|
* file; also rewind to the beginning of the local file.
|
||||||
|
*/
|
||||||
if (prev_read == -1) {
|
if (prev_read == -1) {
|
||||||
memset(&obj_req->stream, 0, sizeof(obj_req->stream));
|
memset(&obj_req->stream, 0, sizeof(obj_req->stream));
|
||||||
git_inflate_init(&obj_req->stream);
|
git_inflate_init(&obj_req->stream);
|
||||||
@ -203,8 +207,10 @@ static void start_object_request(struct walker *walker,
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_URL, url);
|
curl_easy_setopt(slot->curl, CURLOPT_URL, url);
|
||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
||||||
|
|
||||||
/* If we have successfully processed data from a previous fetch
|
/*
|
||||||
attempt, only fetch the data we don't already have. */
|
* If we have successfully processed data from a previous fetch
|
||||||
|
* attempt, only fetch the data we don't already have.
|
||||||
|
*/
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (walker->get_verbosely)
|
if (walker->get_verbosely)
|
||||||
fprintf(stderr,
|
fprintf(stderr,
|
||||||
@ -221,7 +227,8 @@ static void start_object_request(struct walker *walker,
|
|||||||
if (!start_active_slot(slot)) {
|
if (!start_active_slot(slot)) {
|
||||||
obj_req->state = ABORTED;
|
obj_req->state = ABORTED;
|
||||||
obj_req->slot = NULL;
|
obj_req->slot = NULL;
|
||||||
close(obj_req->local); obj_req->local = -1;
|
close(obj_req->local);
|
||||||
|
obj_req->local = -1;
|
||||||
free(obj_req->url);
|
free(obj_req->url);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -231,7 +238,8 @@ static void finish_object_request(struct object_request *obj_req)
|
|||||||
{
|
{
|
||||||
struct stat st;
|
struct stat st;
|
||||||
|
|
||||||
close(obj_req->local); obj_req->local = -1;
|
close(obj_req->local);
|
||||||
|
obj_req->local = -1;
|
||||||
|
|
||||||
if (obj_req->http_code == 416) {
|
if (obj_req->http_code == 416) {
|
||||||
fprintf(stderr, "Warning: requested range invalid; we may already have all the data.\n");
|
fprintf(stderr, "Warning: requested range invalid; we may already have all the data.\n");
|
||||||
@ -350,9 +358,8 @@ static void prefetch(struct walker *walker, unsigned char *sha1)
|
|||||||
object_queue_head = newreq;
|
object_queue_head = newreq;
|
||||||
} else {
|
} else {
|
||||||
tail = object_queue_head;
|
tail = object_queue_head;
|
||||||
while (tail->next != NULL) {
|
while (tail->next != NULL)
|
||||||
tail = tail->next;
|
tail = tail->next;
|
||||||
}
|
|
||||||
tail->next = newreq;
|
tail->next = newreq;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -401,8 +408,10 @@ static int fetch_index(struct walker *walker, struct alt_base *repo, unsigned ch
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
||||||
slot->local = indexfile;
|
slot->local = indexfile;
|
||||||
|
|
||||||
/* If there is data present from a previous transfer attempt,
|
/*
|
||||||
resume where it left off */
|
* If there is data present from a previous transfer attempt,
|
||||||
|
* resume where it left off
|
||||||
|
*/
|
||||||
prev_posn = ftell(indexfile);
|
prev_posn = ftell(indexfile);
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (walker->get_verbosely)
|
if (walker->get_verbosely)
|
||||||
@ -507,7 +516,8 @@ static void process_alternates_response(void *callback_data)
|
|||||||
struct alt_base *newalt;
|
struct alt_base *newalt;
|
||||||
char *target = NULL;
|
char *target = NULL;
|
||||||
if (data[i] == '/') {
|
if (data[i] == '/') {
|
||||||
/* This counts
|
/*
|
||||||
|
* This counts
|
||||||
* http://git.host/pub/scm/linux.git/
|
* http://git.host/pub/scm/linux.git/
|
||||||
* -----------here^
|
* -----------here^
|
||||||
* so memcpy(dst, base, serverlen) will
|
* so memcpy(dst, base, serverlen) will
|
||||||
@ -520,7 +530,8 @@ static void process_alternates_response(void *callback_data)
|
|||||||
okay = 1;
|
okay = 1;
|
||||||
}
|
}
|
||||||
} else if (!memcmp(data + i, "../", 3)) {
|
} else if (!memcmp(data + i, "../", 3)) {
|
||||||
/* Relative URL; chop the corresponding
|
/*
|
||||||
|
* Relative URL; chop the corresponding
|
||||||
* number of subpath from base (and ../
|
* number of subpath from base (and ../
|
||||||
* from data), and concatenate the result.
|
* from data), and concatenate the result.
|
||||||
*
|
*
|
||||||
@ -549,7 +560,7 @@ static void process_alternates_response(void *callback_data)
|
|||||||
}
|
}
|
||||||
/* If the server got removed, give up. */
|
/* If the server got removed, give up. */
|
||||||
okay = strchr(base, ':') - base + 3 <
|
okay = strchr(base, ':') - base + 3 <
|
||||||
serverlen;
|
serverlen;
|
||||||
} else if (alt_req->http_specific) {
|
} else if (alt_req->http_specific) {
|
||||||
char *colon = strchr(data + i, ':');
|
char *colon = strchr(data + i, ':');
|
||||||
char *slash = strchr(data + i, '/');
|
char *slash = strchr(data + i, '/');
|
||||||
@ -593,9 +604,11 @@ static void fetch_alternates(struct walker *walker, const char *base)
|
|||||||
struct alternates_request alt_req;
|
struct alternates_request alt_req;
|
||||||
struct walker_data *cdata = walker->data;
|
struct walker_data *cdata = walker->data;
|
||||||
|
|
||||||
/* If another request has already started fetching alternates,
|
/*
|
||||||
wait for them to arrive and return to processing this request's
|
* If another request has already started fetching alternates,
|
||||||
curl message */
|
* wait for them to arrive and return to processing this request's
|
||||||
|
* curl message
|
||||||
|
*/
|
||||||
#ifdef USE_CURL_MULTI
|
#ifdef USE_CURL_MULTI
|
||||||
while (cdata->got_alternates == 0) {
|
while (cdata->got_alternates == 0) {
|
||||||
step_active_slots();
|
step_active_slots();
|
||||||
@ -615,8 +628,10 @@ static void fetch_alternates(struct walker *walker, const char *base)
|
|||||||
url = xmalloc(strlen(base) + 31);
|
url = xmalloc(strlen(base) + 31);
|
||||||
sprintf(url, "%s/objects/info/http-alternates", base);
|
sprintf(url, "%s/objects/info/http-alternates", base);
|
||||||
|
|
||||||
/* Use a callback to process the result, since another request
|
/*
|
||||||
may fail and need to have alternates loaded before continuing */
|
* Use a callback to process the result, since another request
|
||||||
|
* may fail and need to have alternates loaded before continuing
|
||||||
|
*/
|
||||||
slot = get_active_slot();
|
slot = get_active_slot();
|
||||||
slot->callback_func = process_alternates_response;
|
slot->callback_func = process_alternates_response;
|
||||||
alt_req.walker = walker;
|
alt_req.walker = walker;
|
||||||
@ -762,8 +777,10 @@ static int fetch_pack(struct walker *walker, struct alt_base *repo, unsigned cha
|
|||||||
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
curl_easy_setopt(slot->curl, CURLOPT_HTTPHEADER, data->no_pragma_header);
|
||||||
slot->local = packfile;
|
slot->local = packfile;
|
||||||
|
|
||||||
/* If there is data present from a previous transfer attempt,
|
/*
|
||||||
resume where it left off */
|
* If there is data present from a previous transfer attempt,
|
||||||
|
* resume where it left off
|
||||||
|
*/
|
||||||
prev_posn = ftell(packfile);
|
prev_posn = ftell(packfile);
|
||||||
if (prev_posn>0) {
|
if (prev_posn>0) {
|
||||||
if (walker->get_verbosely)
|
if (walker->get_verbosely)
|
||||||
@ -840,18 +857,18 @@ static int fetch_object(struct walker *walker, struct alt_base *repo, unsigned c
|
|||||||
}
|
}
|
||||||
|
|
||||||
#ifdef USE_CURL_MULTI
|
#ifdef USE_CURL_MULTI
|
||||||
while (obj_req->state == WAITING) {
|
while (obj_req->state == WAITING)
|
||||||
step_active_slots();
|
step_active_slots();
|
||||||
}
|
|
||||||
#else
|
#else
|
||||||
start_object_request(walker, obj_req);
|
start_object_request(walker, obj_req);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
while (obj_req->state == ACTIVE) {
|
while (obj_req->state == ACTIVE)
|
||||||
run_active_slot(obj_req->slot);
|
run_active_slot(obj_req->slot);
|
||||||
}
|
|
||||||
if (obj_req->local != -1) {
|
if (obj_req->local != -1) {
|
||||||
close(obj_req->local); obj_req->local = -1;
|
close(obj_req->local);
|
||||||
|
obj_req->local = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (obj_req->state == ABORTED) {
|
if (obj_req->state == ABORTED) {
|
||||||
|
Loading…
Reference in New Issue
Block a user