[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: