crashed when accepting pull

Issue #469 resolved
Anonymous created an issue



Mercurial version (1.8.1). TortoiseHg version (2.0.2) Command: --nofork workbench CWD: C:\coding\projects\wmRep2011 Extensions loaded: fixfrozenexts Python version: 2.6.6 (r266:84297, Aug 24 2010, 18:13:38) [MSC v.1500 64 bit (AMD64)] Windows version: (6, 1, 7600, 2, '') Processor architecture: x64 Qt-4.7.1 PyQt-4.8.2 Traceback (most recent call last): File "tortoisehg\hgqt\repowidget.pyo", line 849, in viewMenuRequest File "tortoisehg\hgqt\repowidget.pyo", line 856, in singleSelectionMenu File "tortoisehg\hgqt\thgrepo.pyo", line 246, in changectx File "mercurial\localrepo.pyo", line 576, in changectx File "mercurial\localrepo.pyo", line 206, in getitem File "mercurial\context.pyo", line 25, in init File "mercurial\revlog.pyo", line 312, in node IndexError: list index out of range


Comments (5)

  1. Steve Borho

    I think I understand how this occurs, but fixing it will be a bit tricky.

    In a nutshell; we drop the bundlerepo that includes the preview revisions when we start the pull from the bundle. This pull happens in a background thread and while it's running there's a window where any clicks on the incoming revisions will raise an IndexError. Once the pull is complete we're safe again.

    To fix this we need to defer the dropping of the bundlerepo until the pull is complete.

  2. Log in to comment