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

Bug#594743: texlive-binaries: pdftex slow to generate sources when $HOME contains a trailing "/".



On Mon, Aug 30, 2010 at 06:48:05AM +0900, Norbert Preining wrote:
> Hi,

Hello,

> >I don't mind taking a look (I am a programmer) if it's likely to be a simple
> >change (i.e., I wouldn't need to have a bunch of requisite knowledge about
> >TexLive and its infrastructure).  Point me in the right direction if it's
> >going to save you guys some time.
> 
> I guess it will be around line 52 in current variable.c, in function
> kpathsea_var_value, where the value from getenv is taken.

OK, I'll take a look tomorrow, hopefully.

> >Also, is there a reason why such a fix wouldn't ever make it upstream?  Have
> >they already seen this and somehow dismissed it due to another reason?
> 
> Yes, because it *CAN* be considered a feature!

Right -- I see what you're saying now.  Upstream or local packagers aren't
necessarily opposed to such a fix, providing it doesn't remove it
completely, as it's a feature.  That makes sense, but it's annoying to me
that it more-or-less makes $HOME a special case in terms of this.  Hmm.
I see now why this bug hasn't been resolved in four years.  :)

> >Did I not also read in the merged bug which 594743 got put into, that tilde
> >expansion worked just fine in texmf.cnf, whereas $HOME still suffered?
> 
> Yes. tilde.c is used for that and it contains already code that handles
> a trailing slash in $HOME. But using $HOME by itself is not treated
> specifically but as any other variable. And so we would have to make
> a copy/call to that code blob that removes trailing /, but *ONLY* for
> $HOME, as for other variables it might be used on purpose!!!!

Of course.  If we did this though, we would still have to find a way of
ensuring that a trailing "/" in $HOME is still considered A Good Thing (tm)
if that's what the user really meant.  The only way I can see this happening
is through the use of some specific environment variable, as in:

export ALWAYS_PERFORM_HOME_TEXMF_EXPANSION=1

for instance.  It's an idea.   That way, we still allow users to have this
odd feature of $HOME ending in a trailing slash if that's really what the
meant.

> If you want to dive into it, please check out the source code,
> or if you want I can send you variable.c, tilde.c, and anything else
> you want.

It's OK.  I think I can find the sources to this and start work on it.  I
will let you know if I get stuck though.

Oh -- interestingly enough, Norbert, you were kind of right before.  I
checked /etc/passwd on my workstation and found that for my usual $USER,
that my home area field therein, had "/home/$USER/" -- i.e., a trailing
slash.  Given I have never ever edited this file directly, clearly something
has added it, although I have no idea what.  But it certainly wasn't me.  :)

None of my other machines have this (I did check) but then they do run
different bits and pieces of software, although you'd think only something
near the base-system of Debian would need to touch /etc/passwd over the
course of time.  Most odd, although that's a mystery I am never likely to
solve.

Kindly,

-- Thomas Adam

-- 
"Deep in my heart I wish I was wrong.  But deep in my heart I know I am
not." -- Morrissey ("Girl Least Likely To" -- off of Viva Hate.)



Reply to: