nixpkgs/pkgs/by-name/tk/tkdiff/189.patch
Rob a7d0c0e7ca
tkdiff: init at 5.6
TkDiff is a graphical front end to the diff program
https://tkdiff.sourceforge.io/
2023-10-19 06:18:45 -07:00

72 lines
2.9 KiB
Diff

Index: tkdiff
===================================================================
diff --git a/tkdiff b/tkdiff
--- a/tkdiff (revision 188)
+++ b/tkdiff (revision 189)
@@ -111,7 +111,7 @@
}
# Determine the name of the temporary directory, the rc file name,
-# and possible VPATH EnvVar, all of which are platform dependent.
+# NULLdev, and possible VPATH EnvVar, all of which are platform dependent.
#
# Much MAY likely be overridden by a preference in .tkdiffrc,
# EXCEPT (obviously) when no such file actually exists yet
@@ -126,6 +126,9 @@
set opts(tmpdir) C:/temp
}
+ # Reserved filename which is actually a NULL device
+ set opts(NULLdev) "nul"
+
# Split up and store a VPATH if it exists
if {[info exists ::env(VPATH)]} {
set finfo(Vpath) [split $::env(VPATH) ";"]
@@ -145,6 +148,9 @@
set opts(tmpdir) $::env(TMPDIR)
} {set opts(tmpdir) /tmp }
+ # Reserved filename which is actually a NULL device (Unix-like platforms)
+ set opts(NULLdev) "/dev/null"
+
# Split up and store a VPATH if it exists
if {[info exists ::env(VPATH)]} {
set finfo(Vpath) [split $::env(VPATH) ":"]
@@ -2106,7 +2112,7 @@
# 1 Failed (PLUS a 'pushed' HARD-error message to the caller)
###############################################################################
proc get-file {fn ndx {probe 0}} {
- global g finfo
+ global g opts finfo
# Ancestor files are stored into a slightly adjusted array element name
# N.B> 'ndx' AS PASSED *can* be an EXPRESSION (not just a number): resolve!
@@ -2121,7 +2127,7 @@
} elseif {!$tildechk} {
# DO NOT REPORT non-existence if this attempt was ONLY a probe
if {$probe} { return 1 } { set MSG "File '$fn' does not exist" }
- } elseif {[file isfile $fn]} {
+ } elseif {[file isfile $fn] || $fn == $opts(NULLdev)} {
set finfo(${A}lbl,$ndx) [shortNm [set finfo(${A}pth,$ndx) "$fn"]]
} else { set MSG "'$fn' exists, but is not a file" }
@@ -2857,7 +2863,7 @@
# Align various label decorations to the CURRENT input file pairing
###############################################################################
proc alignDecor {pairnum} {
- global g w finfo
+ global g w opts finfo
# Establish if 3way mode is NOW active and what file indices are in use
set g(is3way) [info exists finfo(albl,$pairnum)]
@@ -2874,7 +2880,8 @@
set finfo(lbl,$LR) $finfo(ulbl,$ndx($n)) ;# Override lbl display
} else {set finfo(lbl,$LR) $finfo(lbl,$ndx($n))}
- if {![info exists finfo(tmp,$ndx($n))]} {
+ if {![info exists finfo(tmp,$ndx($n))] \
+ && $finfo(pth,$ndx($n)) != $opts(NULLdev)} {
# (N.B> Tip data will ALSO be used by report generation heading)
set g(tooltip,${LR}Label) "{$finfo(pth,$ndx($n))\n"
append g(tooltip,${LR}Label) \