1. TortoiseHg
  2. TortoiseHg
  3. thg
Issue #2580 resolved

Repo widget stuck at "incomming" after dismissing "outstanding uncommitted changes"

Stanimir Stamenkov
created an issue

Using the tortoisehg-stable-2.7.2174.123-x64-7b2a0a64ceca.msi:

  1. Clone a repo to the tip-1 revision (avoid adding remote change later);
  2. Create and commit a local change;
  3. Make some local changes without commiting them;
  4. Switch to "Synchronize" and set "Post Pull: Rebase";
  5. Check for incoming changes and "Accept" them;
  6. Close the "abort: outstanding uncommitted changes" infobar.

At this point the repo/history widget is stuck showing the incoming changes. The only way to restore is to close the repo (or the workbench) and reopen it.

Comments (5)

  1. Steve Borho

    repowidget: clear bundle even if all revisions aren't pulled (fixes #2580)

    Before 54e0729935e5, ConfirmInfoBar had a bug to emit rejected followed by accepted. Because of it, rejectBundle() was called before onPullCompleted(), so the incoming preview was always cleared.

    click "Accept" -> confirm.accepted -> pullBundle -> syncStarted
    -> clearInfoBar -> confirm.close -> confirm.rejected -> rejectBundle
                       (bug: confirm infobar should be closed already)
    

    When onPullCompleted() was implemented, 37bce9d5ea7e, RepoWidget had buttons to accept/reject the bundle, so it can restart pullBundle after failure. But now, CommandErrorInfoBar has no GUI to try pullBundle again, so this patch changes onPullCompleted() to just clear the bundle.

    → <<cset 317395c14437>>

  2. Sebastian Müller

    Could it be that that last fix broke the "pull to here functionality"? In 2.8 I have the following serious regression: If I switch to the sync tab and select another repo (not the default), then do a "show incoming changes", then the "Pull to Here" functionality is broken because then the revision (the integer id?! shouldn't this be the hex id?) does not exist in the default repository. Immediately after I click the context menu the repo is reverted to the default repo and the pull to here fails (or even pulls the wrong changesets?)

  3. Log in to comment