diff --git a/hggit/gitdirstate.py b/hggit/gitdirstate.py index c1c2af8aecb30188cec7deb4a4f96a953b2a96fb_aGdnaXQvZ2l0ZGlyc3RhdGUucHk=..da01212cd53a11fa477b21924da5360e466cf9cd_aGdnaXQvZ2l0ZGlyc3RhdGUucHk= 100644 --- a/hggit/gitdirstate.py +++ b/hggit/gitdirstate.py @@ -163,7 +163,11 @@ results, work, dirsnotfound = self._walkexplicit(match, subrepos) skipstep3 = skipstep3 and not (work or dirsnotfound) - work = [d for d in work if not dirignore(d)] + if work and isinstance(work[0], tuple): + # Mercurial >= 3.3.3 + work = [nd for nd, d in work if not dirignore(d)] + else: + work = [d for d in work if not dirignore(d)] wadd = work.append # step 2: visit subdirectories