Hello, Trying to solve a problem with object/info/alternates and http (a rather problematic combination) I noticed the following code in sha1_file.c:336 in function link_alt_odb_entries. (current master -- v1.5.3-rc4-41-g7efeb8f): if ((*last != '/') && depth) { error("%s: ignoring relative alternate object store %s", relative_base, last); } else { link_alt_odb_entry(last, cp - last, relative_base, depth); } The last is (if I understood the code correctly) begining of line, cp is end of that line and depth is depth of recursion in resolving the alternates. Now unless I read the code completely wrong, it means, that when git reads a repository, it resolves relative paths in it's objects/info/alternates, but if that contains further alternates, it would ignore relative alternate paths there -- and therefore not find objects needed from there. And my question is, is there any good reason to reject relative paths in alternates of an alternate? From what I see the recursive call to link_alt_odb_entries (via link_alt_odb_entry and read_info_alternates) has all the information it needs to resolve such paths. Thanks, Jan -- Jan 'Bulb' Hudec <bulb@xxxxxx>
Attachment:
signature.asc
Description: Digital signature