1. TortoiseHg
  2. TortoiseHg
  3. thg
Issue #2499 duplicate

Workbench often loses MQ's status after popping a patch.

Kaz Nishimura
created an issue

When I pops a MQ patch from GUI, Workbench often loses the queue's status and displays remaining applied patches falsely as committed. I must reload to correct the view.

I am afraid that Workbench reads the queue's status before MQ finishes writing it to .hg/patches/status but not sure.

Comments (9)

  1. Yuya Nishihara

    Kaz Nishimura Thanks. That happens because of the time lag between cache invalidation and model reload.

    The problem can be avoided by the following change, but it would introduce another bug:

    --- a/hgext/thgrepodamper.py
    +++ b/hgext/thgrepodamper.py
    @@ -28,7 +28,7 @@ def extsetup(ui):
                 injectdamper(repo._pyqtobj, 'fileChanged', 'onFileChange')
                 # disable pollStatus() by busy count, which may have side effect
                 repo.incrementBusyCount = lambda: None
    -            repo.decrementBusyCount = repo.thginvalidate
    +            repo.decrementBusyCount = lambda: None #repo.thginvalidate
             return repo
    
         extensions.wrapfunction(thgrepo, 'repository', repository)
    
  2. Log in to comment