Skip to contentSkip to conversation

git-gui: fix inability to quit after closing another instance

PATCH In review Orgad Shaneh via GitGitGadget 3 participants 3 messages Feb 1, 2023 – Apr 20, 2024

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 git-gui: fix inability to quit after closing another instance

From: Orgad Shaneh <[email protected]>

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

---
git-gui: fix inability to quit after closing another instance

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1446%2Forgads%2Fgit-gui-no-quit-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1446/orgads/git-gui-no-quit-v1
Pull-Request: https://github.com/git/git/pull/1446

 git-gui/git-gui.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
git-gui/git-gui.sh +1 -1
index 201524c34ed..b00ee691e3b 100755
@@ -2307,7 +2307,7 @@ proc do_quit {{rc {1}}} {
 		#
 		set save [gitdir GITGUI_MSG]
 		if {$GITGUI_BCK_exists && ![$ui_comm edit modified]} {
-			file rename -force [gitdir GITGUI_BCK] $save
+			catch { file rename -force [gitdir GITGUI_BCK] $save }
 			set GITGUI_BCK_exists 0
 		} elseif {[$ui_comm edit modified]} {
 			set msg [string trim [$ui_comm get 0.0 end]]

base-commit: 2fc9e9ca3c7505bc60069f11e7ef09b1aeeee473

Signature · 1 line
gitgitgadget
#1 lore raw

Orgad, thanks for a patch.
Yadav, this came to [email protected], so I'm forwarding.

cf. Documentation/SubmittingPatches

== Subsystems with dedicated maintainers

Some parts of the system have dedicated maintainers with their own repositories.

- git-gui/ comes from git-gui project, maintained by Pratyush Yadav:

https://github.com/prati0100/git-gui.git

Quoted 44 lines · Orgad Shaneh via GitGitGadget

From: Orgad Shaneh <[email protected]>

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

---
git-gui: fix inability to quit after closing another instance

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1446%2Forgads%2Fgit-gui-no-quit-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1446/orgads/git-gui-no-quit-v1
Pull-Request: https://github.com/git/git/pull/1446

 git-gui/git-gui.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
git-gui/git-gui.sh +1 -1
index 201524c34ed..b00ee691e3b 100755
@@ -2307,7 +2307,7 @@ proc do_quit {{rc {1}}} {
 		#
 		set save [gitdir GITGUI_MSG]
 		if {$GITGUI_BCK_exists && ![$ui_comm edit modified]} {
-			file rename -force [gitdir GITGUI_BCK] $save
+			catch { file rename -force [gitdir GITGUI_BCK] $save }
 			set GITGUI_BCK_exists 0
 		} elseif {[$ui_comm edit modified]} {
 			set msg [string trim [$ui_comm get 0.0 end]]

base-commit: 2fc9e9ca3c7505bc60069f11e7ef09b1aeeee473

#2 lore raw

Hi Junio/Yadav,

It's been more than a year since I opened a PR to git-gui upstream
(https://github.com/prati0100/git-gui/pull/91). I pinged several times, but it looks like nobody's home.

Is it possible to accept it to git nevertheless? This is an annoying issue, and the fix is trivial.

Thanks!

- Orgad

Quoted 61 lines · Junio C Hamano

Orgad, thanks for a patch.
Yadav, this came to [email protected], so I'm forwarding.

cf. Documentation/SubmittingPatches

== Subsystems with dedicated maintainers

Some parts of the system have dedicated maintainers with their own repositories.

- git-gui/ comes from git-gui project, maintained by Pratyush Yadav:

https://github.com/prati0100/git-gui.git

Quoted 44 lines · Orgad Shaneh via GitGitGadget

From: Orgad Shaneh <[email protected]>

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

---
git-gui: fix inability to quit after closing another instance

If you open 2 git gui instances in the same directory, then close one of them and try to close the other, an error message pops up, saying:
'error renaming ".git/GITGUI_BCK": no such file or directory', and it is no longer possible to close the window ever.

Fix by catching this error, and proceeding even if the file no longer exists.

Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1446%2Forgads%2Fgit-gui-no-quit-v1
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1446/orgads/git-gui-no-quit-v1
Pull-Request: https://github.com/git/git/pull/1446

 git-gui/git-gui.sh | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
git-gui/git-gui.sh +1 -1
index 201524c34ed..b00ee691e3b 100755
@@ -2307,7 +2307,7 @@ proc do_quit {{rc {1}}} {
              #
              set save [gitdir GITGUI_MSG]
              if {$GITGUI_BCK_exists && ![$ui_comm edit modified]} {
-                     file rename -force [gitdir GITGUI_BCK] $save
+                     catch { file rename -force [gitdir GITGUI_BCK] $save }
                      set GITGUI_BCK_exists 0
              } elseif {[$ui_comm edit modified]} {
                      set msg [string trim [$ui_comm get 0.0 end]]

base-commit: 2fc9e9ca3c7505bc60069f11e7ef09b1aeeee473