On Thu, Apr 21, 2016 at 2:20 PM, Eric Sunshine <[email protected]> wrote:
> On Wed, Apr 20, 2016 at 9:24 AM, Nguyễn Thái Ngọc Duy <[email protected]>
> wrote:
>> Signed-off-by: Nguyễn Thái Ngọc Duy <[email protected]>
>> ---
>> diff --git a/worktree.c b/worktree.c
>> @@ -178,6 +182,18 @@ struct worktree **get_worktrees(void)
>> }
>> ALLOC_GROW(list, counter + 1, alloc);
>> list[counter] = NULL;
>> +
>> + strbuf_addstr(&git_dir, absolute_path(get_git_dir()));
>> + for (i = 0; i < counter; i++) {
>> + struct worktree *wt = list[i];
>> + strbuf_addstr(&path,
>> absolute_path(get_worktree_git_dir(wt)));
>> + wt->is_current = !strcmp_icase(git_dir.buf, path.buf);
>
> Can you talk a bit about why this uses 'icase'? Should it be
> respecting cache.h:ignore_case?
It does.That function (in dir.c) is just one-liner
return ignore_case ? strcasecmp(a, b) : strcmp(a, b);
I admit though, the naming does not make that clear.
>> + strbuf_reset(&path);
>> + if (wt->is_current)
>> + break;
>> + }
>> + strbuf_release(&git_dir);
>> + strbuf_release(&path);
>
> Minor: Would it make sense to place this new code in its own function
> -- say, mark_current_worktree() -- to keep get_worktrees() from
> becoming overlong?
Good idea. Will do.
--
Duy
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html