This allows commit to work. Signed-off-by: Carlo Marcelo Arenas Belón <carenas@xxxxxxxxx> --- git-gui.sh | 5 +++-- lib/commit.tcl | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/git-gui.sh b/git-gui.sh index c0dc8ce..1646124 100755 --- a/git-gui.sh +++ b/git-gui.sh @@ -1821,10 +1821,11 @@ proc short_path {path} { set next_icon_id 0 if { [get_config extensions.objectformat] eq "sha256" } { - set null_oid [string repeat 0 64] + set oid_size 64 } else { - set null_oid [string repeat 0 40] + set oid_size 40 } +set null_oid [string repeat 0 $oid_size] proc merge_state {path new_state {head_info {}} {index_info {}}} { global file_states next_icon_id null_oid diff --git a/lib/commit.tcl b/lib/commit.tcl index 11379f8..1306e8d 100644 --- a/lib/commit.tcl +++ b/lib/commit.tcl @@ -337,6 +337,7 @@ proc commit_committree {fd_wt curHEAD msg_p} { global file_states selected_paths rescan_active global repo_config global env + global oid_size gets $fd_wt tree_id if {[catch {close $fd_wt} err]} { @@ -356,7 +357,7 @@ proc commit_committree {fd_wt curHEAD msg_p} { close $fd_ot if {[string equal -length 5 {tree } $old_tree] - && [string length $old_tree] == 45} { + && [string length $old_tree] == 5 + oid_size} { set old_tree [string range $old_tree 5 end] } else { error [mc "Commit %s appears to be corrupt" $PARENT] -- 2.33.0.1081.g099423f5b7