On 10:29 Sat 16 Sep , Junio C Hamano wrote: > Sasha Khapyorsky <sashak@xxxxxxxxxxxx> writes: > > >> > diff --git a/http-fetch.c b/http-fetch.c > >> > index a113bb8..46d6029 100644 > >> > --- a/http-fetch.c > >> > +++ b/http-fetch.c > >> > @@ -324,7 +324,9 @@ static void process_object_response(void > >> > > >> > /* Use alternates if necessary */ > >> > if (obj_req->http_code == 404 || > >> > - obj_req->curl_result == CURLE_FILE_COULDNT_READ_FILE) { > >> > + obj_req->curl_result == CURLE_FILE_COULDNT_READ_FILE || > >> > + (obj_req->http_code == 550 && > >> > + obj_req->curl_result == CURLE_FTP_COULDNT_RETR_FILE)) { > >> > >> Here you do the same as the code would for HTTP 404 when you get > >> 550 _and_ RETR failure... > >> > >> > @@ -538,7 +540,9 @@ static void process_alternates_response( > >> > } > >> > } else if (slot->curl_result != CURLE_OK) { > >> > if (slot->http_code != 404 && > >> > - slot->curl_result != CURLE_FILE_COULDNT_READ_FILE) { > >> > + slot->curl_result != CURLE_FILE_COULDNT_READ_FILE && > >> > + (slot->http_code != 550 && > >> > + slot->curl_result != CURLE_FTP_COULDNT_RETR_FILE)) { > >> > got_alternates = -1; > >> > >> ... but you say, while the original code says "declare error if > >> it is not HTTP 404", "oh by the way, if it is 550 _or_ if it > >> is RETR failure then do not trigger this if()". I suspect you > >> meant to say this? > >> > >> (slot->http_code != 550 || > >> slot->curl_result != CURLE_FTP_COULDNT_RETR_FILE)) { > > > > I think with less strict checking this could be done so, but with _and_ > > this also ensures that we are really in FTP mode. > > I was merely pointing out that in one place you have: > > (http_code == 550 && result == ERETR) > > and another place that tries to say the opposite you have: > > (http_code != 550 && result != ERETR) > > which is not the same thing as > > !(http_code == 550 && result == ERETR) > > I understood, from the former "Use alternates if necessary" > part, that you wanted to make sure that 550 is really from > FTP_RETR and not other random HTTP error message, and I think > that is a reasonable thing to do. Good. Am I need to send the patch or you will integrate it? Sasha - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html