Bug#709986: texlive-base: "Use of uninitialized value"
tag 709986 + pending
thanks
Hi Hilmar,
On Mo, 27 Mai 2013, Hilmar Preuße wrote:
> Use of uninitialized value in range (or flop) at /usr/share/texlive/tlpkg/TeXLive/TLPaper.pm line 498.
Ok, somehow your copy of config-paper.ps got messed up, that can happen.
I have no changed tl-paper (the script) in a way that when *setting*
a paper size, it *first* unsets TEXFMVAR and TEXMFSYSVAR. By this
the normal code with kpsewhich in TLPaper.pm will find the
copy originally distributed in TeX Live (/u/s/texlive/texmf-dist),
*or*, if the sysadm changed something, a copy in TEXMFSYSCONFIG,
but *NOT* (!) the one we have created with tl-paper in TEXMFSYSVAR.
THis way, we are sure that the format is correct while reading in
the current papers and creating a new correct one in TEXMFSYSVAR.
THe sysadmin still has the option to add his own copy of config-paper.ps
in /etc/texmf/dvips/config/ and adjust the paper sizes or whatever,
but he has to care for the syntactic correctness. Something that we anyway
require ;-)
The patch is quite simple:
diff --git a/texlive-base/debian/tl-paper b/texlive-base/debian/tl-paper
index e8f3ec9..7fc5223 100644
--- a/texlive-base/debian/tl-paper
+++ b/texlive-base/debian/tl-paper
@@ -74,6 +74,14 @@ sub main {
usage();
exit 1;
}
+ # set TEXMFVAR and TEXMFSYSVAR to something completely absurd
+ # so that we always find either the system provided config file
+ # as distributed in /usr/share/texlive/texmf-dist, or, if the
+ # admin decided to override that, a copy in TEXMFSYSCONFIG
+ # but *not* the one we have created at some point in history
+ # in TEXMF(SYS)VAR
+ $ENV{"TEXMFVAR"} = "/does/hopefully/not/exists/on/any/system";
+ $ENV{"TEXMFSYSVAR"} = "/does/hopefully/not/exists/on/any/system";
if ($prg =~ m/^all$/i) {
if ($newpaper !~ /^(a4|letter)$/) {
# we cannot deal with that for now, only a4|letter supported for
I did some experiments with deliberately scramlbing the config-paper.ps
file, and it worked.
Hope you agree that this is a solution to the problem.
Norbert
------------------------------------------------------------------------
PREINING, Norbert http://www.preining.info
JAIST, Japan TeX Live & Debian Developer
DSA: 0x09C5B094 fp: 14DF 2E6C 0307 BE6D AD76 A9C0 D2BF 4AA3 09C5 B094
------------------------------------------------------------------------
Reply to: