Micro-optimize prepare_alt_odb
Calling getenv() is not that expensive, but its also not free, and its certainly not cheaper than testing to see if alt_odb_tail is not null. Because we are calling prepare_alt_odb() from within find_sha1_file every time we cannot find an object file locally we want to skip out of prepare_alt_odb() as early as possible once we have initialized our alternate list. Signed-off-by: Shawn O. Pearce <spearce@spearce.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
d079837eee
commit
7dc24aa5a6
@ -376,11 +376,12 @@ void prepare_alt_odb(void)
|
|||||||
{
|
{
|
||||||
const char *alt;
|
const char *alt;
|
||||||
|
|
||||||
|
if (alt_odb_tail)
|
||||||
|
return;
|
||||||
|
|
||||||
alt = getenv(ALTERNATE_DB_ENVIRONMENT);
|
alt = getenv(ALTERNATE_DB_ENVIRONMENT);
|
||||||
if (!alt) alt = "";
|
if (!alt) alt = "";
|
||||||
|
|
||||||
if (alt_odb_tail)
|
|
||||||
return;
|
|
||||||
alt_odb_tail = &alt_odb_list;
|
alt_odb_tail = &alt_odb_list;
|
||||||
link_alt_odb_entries(alt, alt + strlen(alt), ':', NULL, 0);
|
link_alt_odb_entries(alt, alt + strlen(alt), ':', NULL, 0);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user