Putting a fileset into the file filter editbox causes a stracktrace
I started typing "set:", and it was OK. For each subsequent letter, it popped open the crash dialog. After I got the closing parenthesis in, it was OK and filtered properly. My repo is on the E: drive; I'm not sure why it also references C:. For the record, I was typing 'set:exec()'.
I haven't looked into this at all, but I'm guessing a simple work around is to not keep calling match.match() once the 'set:' prefix is typed, until the last parenthesis is typed.
#!python
** Mercurial version (4.3.1). TortoiseHg version (4.3.1)
** Command: --nofork workbench
** CWD: C:\Users\mharbison.MATT7H-PC\Desktop
** Encoding: UTF-8
** Extensions loaded: purge, schemes, evolve, strip, mq, rebase, eol, extdiff, mercurial_keyring, largefiles
** Python version: 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)]
** Windows version: sys.getwindowsversion(major=6, minor=1, build=7600, platform=2, service_pack='')
** Processor architecture: x86
** Qt-4.8.7 PyQt-4.11.4 QScintilla-2.9
Traceback (most recent call last):
File "tortoisehg\hgqt\revdetails.pyo", line 408, in _applyFileNameFilter
File "tortoisehg\hgqt\manifestmodel.pyo", line 300, in setNameFilter
File "tortoisehg\hgqt\manifestmodel.pyo", line 378, in _repopulateNodes
File "tortoisehg\hgqt\manifestmodel.pyo", line 405, in _populateNodes
File "tortoisehg\hgqt\manifestmodel.pyo", line 526, in _makematcher
File "mercurial\match.pyo", line 153, in match
File "mercurial\match.pyo", line 381, in __init__
File "mercurial\match.pyo", line 826, in _buildmatch
File "mercurial\match.pyo", line 43, in _expandsets
File "mercurial\context.pyo", line 196, in getfileset
File "mercurial\fileset.pyo", line 592, in getfileset
File "mercurial\fileset.pyo", line 110, in getset
File "mercurial\fileset.pyo", line 113, in stringset
File "mercurial\fileset.pyo", line 534, in matcher
File "mercurial\context.pyo", line 306, in match
File "mercurial\match.pyo", line 148, in match
File "mercurial\match.pyo", line 194, in _donormalize
File "mercurial\pathutil.pyo", line 188, in canonpath
File "ntpath.pyo", line 529, in relpath
ValueError: path is on drive E:, start on drive C: