Commit 5b29e6b6 authored by Tom Lane's avatar Tom Lane

In PL/Tcl tests, don't choke if optional error fields are missing.

This fixes a portability issue introduced by commit 961bed02: with a
compiler that doesn't support PG_FUNCNAME_MACRO, the "funcname" field of
errorCode won't be provided, leading to a failure of the unset command.
I added -nocomplain to the unset commands for filename and lineno too, just
in case, though I know of no platform that wouldn't populate those fields.
(BTW, -nocomplain is new in Tcl 8.4, but fortunately we dropped support
for pre-8.4 Tcl some time ago.)

Per buildfarm member pademelon.
parent 7f5b043d
......@@ -608,9 +608,9 @@ as $function$
# Get rid of keys that can't be expected to remain constant
array set myArray $::errorCode
unset myArray(POSTGRES)
unset myArray(funcname)
unset myArray(filename)
unset myArray(lineno)
unset -nocomplain myArray(funcname)
unset -nocomplain myArray(filename)
unset -nocomplain myArray(lineno)
# Format into something nicer
set vals []
......
......@@ -653,9 +653,9 @@ as $function$
# Get rid of keys that can't be expected to remain constant
array set myArray $::errorCode
unset myArray(POSTGRES)
unset myArray(funcname)
unset myArray(filename)
unset myArray(lineno)
unset -nocomplain myArray(funcname)
unset -nocomplain myArray(filename)
unset -nocomplain myArray(lineno)
# Format into something nicer
set vals []
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment