pdftex[789] branches/stable/source/src: sync from tl r46188

commits+karl at tug.org commits+karl at tug.org
Tue Jan 2 00:12:21 CET 2018


Revision: 789
          http://tug.org/svn/pdftex?view=revision&revision=789
Author:   karl
Date:     2018-01-02 00:12:21 +0100 (Tue, 02 Jan 2018)
Log Message:
-----------
sync from tl r46188

Revision Links:
--------------
    http://tug.org/svn/pdftex?view=revision&revision=46188

Modified Paths:
--------------
    branches/stable/source/src/build-aux/config.guess
    branches/stable/source/src/build-aux/texinfo.tex
    branches/stable/source/src/libs/README
    branches/stable/source/src/texk/kpathsea/ChangeLog
    branches/stable/source/src/texk/kpathsea/xbasename.c
    branches/stable/source/src/texk/kpathsea/xdirname.c
    branches/stable/source/src/texk/tests/TeXLive/TLConfig.pm
    branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
    branches/stable/source/src/texk/web2c/lib/ChangeLog
    branches/stable/source/src/texk/web2c/lib/printversion.c
    branches/stable/source/src/texk/web2c/pdftexdir/tounicode.c
    branches/stable/source/src/utils/README

Modified: branches/stable/source/src/build-aux/config.guess
===================================================================
--- branches/stable/source/src/build-aux/config.guess	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/build-aux/config.guess	2018-01-01 23:12:21 UTC (rev 789)
@@ -2,7 +2,7 @@
 # Attempt to guess a canonical system name.
 #   Copyright 1992-2017 Free Software Foundation, Inc.
 
-timestamp='2017-11-07'
+timestamp='2017-12-17'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -265,6 +265,9 @@
     *:Redox:*:*)
 	echo ${UNAME_MACHINE}-unknown-redox
 	exit ;;
+    mips:OSF1:*.*)
+        echo mips-dec-osf1
+        exit ;;
     alpha:OSF1:*:*)
 	case $UNAME_RELEASE in
 	*4.0)

Modified: branches/stable/source/src/build-aux/texinfo.tex
===================================================================
--- branches/stable/source/src/build-aux/texinfo.tex	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/build-aux/texinfo.tex	2018-01-01 23:12:21 UTC (rev 789)
@@ -3,7 +3,7 @@
 % Load plain if necessary, i.e., if running under initex.
 \expandafter\ifx\csname fmtname\endcsname\relax\input plain\fi
 %
-\def\texinfoversion{2017-12-01.13}
+\def\texinfoversion{2017-12-26.21}
 %
 % Copyright 1985, 1986, 1988, 1990, 1991, 1992, 1993, 1994, 1995,
 % 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006,
@@ -2503,25 +2503,13 @@
 
 
 % In order for the font changes to affect most math symbols and letters,
-% we have to define the \textfont of the standard families.
+% we have to define the \textfont of the standard families.  We don't
+% bother to reset \scriptfont and \scriptscriptfont; awaiting user need.
 %
 \def\resetmathfonts{%
   \textfont0=\rmfont \textfont1=\ifont \textfont2=\syfont
   \textfont\itfam=\itfont \textfont\slfam=\slfont \textfont\bffam=\bffont
   \textfont\ttfam=\ttfont \textfont\sffam=\sffont
-  %
-  \scriptfont0=\rmfont \scriptfont1=\ifont \scriptfont2=\syfont
-  \scriptfont\itfam=\itfont \scriptfont\slfam=\slfont \scriptfont\bffam=\bffont
-  \scriptfont\ttfam=\ttfont \scriptfont\sffam=\sffont
-  %
-  \scriptscriptfont0=\rmfont
-  \scriptscriptfont1=\ifont
-  \scriptscriptfont2=\syfont
-  \scriptscriptfont\itfam=\itfont
-  \scriptscriptfont\slfam=\slfont
-  \scriptscriptfont\bffam=\bffont
-  \scriptscriptfont\ttfam=\ttfont
-  \scriptscriptfont\sffam=\sffont
 }
 
 %
@@ -2631,26 +2619,11 @@
 % Markup style infrastructure.  \defmarkupstylesetup\INITMACRO will
 % define and register \INITMACRO to be called on markup style changes.
 % \INITMACRO can check \currentmarkupstyle for the innermost
-% style and the set of \ifmarkupSTYLE switches for all styles
-% currently in effect.
-\newif\ifmarkupvar
-\newif\ifmarkupsamp
-\newif\ifmarkupkey
-%\newif\ifmarkupfile % @file == @samp.
-%\newif\ifmarkupoption % @option == @samp.
-\newif\ifmarkupcode
-\newif\ifmarkupkbd
-%\newif\ifmarkupenv % @env == @code.
-%\newif\ifmarkupcommand % @command == @code.
-\newif\ifmarkuptex % @tex (and part of @math, for now).
-\newif\ifmarkupexample
-\newif\ifmarkupverb
-\newif\ifmarkupverbatim
+% style.
 
 \let\currentmarkupstyle\empty
 
 \def\setupmarkupstyle#1{%
-  \csname markup#1true\endcsname
   \def\currentmarkupstyle{#1}%
   \markupstylesetup
 }
@@ -2712,11 +2685,15 @@
 % lilypond developers report.  xpdf does work with the regular 0x27.
 %
 \def\codequoteright{%
-  \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
-    \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
-      '%
+  \ifmonospace
+    \expandafter\ifx\csname SETtxicodequoteundirected\endcsname\relax
+      \expandafter\ifx\csname SETcodequoteundirected\endcsname\relax
+        '%
+      \else \char'15 \fi
     \else \char'15 \fi
-  \else \char'15 \fi
+   \else
+     '%
+   \fi
 }
 %
 % and a similar option for the left quote char vs. a grave accent.
@@ -2724,13 +2701,17 @@
 % the code environments to do likewise.
 %
 \def\codequoteleft{%
-  \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
-    \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
-      % [Knuth] pp. 380,381,391
-      % \relax disables Spanish ligatures ?` and !` of \tt font.
-      \relax`%
+  \ifmonospace
+    \expandafter\ifx\csname SETtxicodequotebacktick\endcsname\relax
+      \expandafter\ifx\csname SETcodequotebacktick\endcsname\relax
+        % [Knuth] pp. 380,381,391
+        % \relax disables Spanish ligatures ?` and !` of \tt font.
+        \relax`%
+      \else \char'22 \fi
     \else \char'22 \fi
-  \else \char'22 \fi
+   \else
+     \relax`%
+   \fi
 }
 
 % Commands to set the quote options.

Modified: branches/stable/source/src/libs/README
===================================================================
--- branches/stable/source/src/libs/README	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/libs/README	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,4 +1,4 @@
-$Id: README 46010 2017-12-07 06:44:07Z kakuto $
+$Id: README 46140 2017-12-26 11:50:03Z kakuto $
 Public domain.  Originally created by Karl Berry, 2005.
 
 Libraries we compile for TeX Live.
@@ -24,7 +24,7 @@
 graphite2 1.3.10 - checked 20jun17
   http://sourceforge.net/projects/silgraphite/files/graphite2/
 
-harfbuzz 1.7.2 - checked 05dec17
+harfbuzz 1.7.4 - checked 20dec17
   http://www.freedesktop.org/software/harfbuzz/release/
 
 icu 58.2 - checked 13mar17
@@ -43,7 +43,7 @@
 luajit 2.1.0-beta2 - checked 09mar16
   http://luajit.org/download/LuaJIT-2.1.0-beta1.tar.gz
 
-mpfr 3.1.6 - checked 08sep17
+mpfr 4.0.0 - checked 26dec17
   http://ftp.gnu.org/gnu/mpfr/
 
 pixman 0.34.0 - checked 04feb16

Modified: branches/stable/source/src/texk/kpathsea/ChangeLog
===================================================================
--- branches/stable/source/src/texk/kpathsea/ChangeLog	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/kpathsea/ChangeLog	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,3 +1,10 @@
+2017-12-27  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
+
+	* xbasename.c, xdirname.c: Remove IS_KANJI test for UNC names,
+	and fix a W32 bug in xdirname.c.
+	Report by Douglas McKenna:
+	http://tug.org/pipermail/tex-k/2017-December/002840.html
+
 2017-12-09  Jiang Jiang  <gzjjgod at gmail.com>
 
 	* tex-glyph.c (try_fallback_resolutions):

Modified: branches/stable/source/src/texk/kpathsea/xbasename.c
===================================================================
--- branches/stable/source/src/texk/kpathsea/xbasename.c	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/kpathsea/xbasename.c	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,6 +1,6 @@
 /* xbasename.c: return the last element in a path.
 
-   Copyright 1992, 1994, 1995, 1996, 2008, 2011, 2016 Karl Berry.
+   Copyright 1992, 1994, 1995, 1996, 2008, 2011, 2016, 2017 Karl Berry.
    Copyright 2005 Olaf Weber.
 
    This library is free software; you can redistribute it and/or
@@ -38,15 +38,9 @@
         unsigned limit;
 
         for (limit = 2; name[limit] && !IS_DIR_SEP (name[limit]); limit++)
-#if defined(WIN32) && defined (KPSE_COMPAT_API)
-            if (IS_KANJI(name+limit)) limit++
-#endif
             ;
         if (name[limit++] && name[limit] && !IS_DIR_SEP (name[limit])) {
             for (; name[limit] && !IS_DIR_SEP (name[limit]); limit++)
-#if defined(WIN32) && defined (KPSE_COMPAT_API)
-                if (IS_KANJI(name+limit)) limit++
-#endif
                 ;
         } else
             /* malformed UNC name, backup */

Modified: branches/stable/source/src/texk/kpathsea/xdirname.c
===================================================================
--- branches/stable/source/src/texk/kpathsea/xdirname.c	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/kpathsea/xdirname.c	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,6 +1,6 @@
 /* xdirname.c: return the directory part of a path.
 
-   Copyright 1999, 2008, 2011, 2016 Karl Berry.
+   Copyright 1999, 2008, 2011, 2016, 2017 Karl Berry.
    Copyright 2005 Olaf Weber.
 
    This library is free software; you can redistribute it and/or
@@ -32,7 +32,6 @@
     unsigned limit = 0, loc;
 #if defined(WIN32)
     string p;
-    unsigned i, j;
 #endif
 
     /* Ignore a NULL name. */
@@ -43,15 +42,9 @@
         limit = 2;
     } else if (IS_UNC_NAME(name)) {
         for (limit = 2; name[limit] && !IS_DIR_SEP (name[limit]); limit++)
-#if defined(WIN32) && defined(KPSE_COMPAT_API)
-            if (IS_KANJI(name+limit)) limit++
-#endif
             ;
         if (name[limit++] && name[limit] && !IS_DIR_SEP (name[limit])) {
             for (; name[limit] && !IS_DIR_SEP (name[limit]); limit++)
-#if defined(WIN32) && defined(KPSE_COMPAT_API)
-                if (IS_KANJI(name+limit)) limit++
-#endif
                 ;
             limit--;
         } else
@@ -59,20 +52,11 @@
             limit = 0;
     }
 
-#if defined(WIN32)
-    j = loc = limit;
-    if (j > 2) j++;
-    for (i = j; name[i]; i++) {
-        if (IS_DIR_SEP (name[i])) {
-            j = i;
-            for (i++; IS_DIR_SEP (name[i]); i++)
-                ;
-            loc = i + 1;
-        }
-#if defined (KPSE_COMPAT_API)
-        else if (IS_KANJI(name+i)) i++;
-#endif
-    }
+#if defined(WIN32) && defined (KPSE_COMPAT_API)
+    for (loc = strlen (name); loc > limit &&
+         (!IS_DIR_SEP (name[loc-1]) ||
+         (loc > 1 && IS_KANJI(name+loc-2))); loc--)
+        ;
 #else
     for (loc = strlen (name); loc > limit && !IS_DIR_SEP (name[loc-1]); loc--)
         ;
@@ -93,9 +77,12 @@
         }
     } else {
         /* If have ///a, must return /, so don't strip off everything.  */
-#if defined(WIN32)
-        loc = j;
-        if (loc == limit && IS_DIR_SEP (name[loc])) loc++;
+#if defined(WIN32) && defined (KPSE_COMPAT_API)
+        while (loc > limit+1 && IS_DIR_SEP (name[loc-1])) {
+            if (loc > 1 && IS_KANJI(name+loc-2))
+                break;
+            loc--;
+        }
 #else
         while (loc > limit+1 && IS_DIR_SEP (name[loc-1])) {
             loc--;

Modified: branches/stable/source/src/texk/tests/TeXLive/TLConfig.pm
===================================================================
--- branches/stable/source/src/texk/tests/TeXLive/TLConfig.pm	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/tests/TeXLive/TLConfig.pm	2018-01-01 23:12:21 UTC (rev 789)
@@ -5,7 +5,7 @@
 
 package TeXLive::TLConfig;
 
-my $svnrev = '$Revision: 44018 $';
+my $svnrev = '$Revision: 45617 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -107,6 +107,7 @@
 our $DefaultContainerExtension = "tar.$DefaultContainerFormat";
 
 # archive (not user) settings.
+# these can be overriden by putting them into 00texlive.config.tlpsrc
 our %TLPDBConfigs = (
   "container_split_src_files" => 1,
   "container_split_doc_files" => 1,
@@ -113,6 +114,7 @@
   "container_format" => $DefaultContainerFormat,
   "minrelease" => $MinRelease,
   "release" => $ReleaseYear,
+  "frozen" => 0,
 );
 
 # definition of the option strings and their value types 

Modified: branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm
===================================================================
--- branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/tests/TeXLive/TLUtils.pm	2018-01-01 23:12:21 UTC (rev 789)
@@ -5,7 +5,7 @@
 
 package TeXLive::TLUtils;
 
-my $svnrev = '$Revision: 44872 $';
+my $svnrev = '$Revision: 46045 $';
 my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown";
 sub module_revision { return $_modulerevision; }
 
@@ -98,7 +98,14 @@
   TeXLive::TLUtils::mktexupd();
   TeXLive::TLUtils::setup_sys_user_mode($optsref,$tmfc, $tmfsc, $tmfv, $tmfsv);
   TeXLive::TLUtils::prepend_own_path();
+  TeXLive::TLUtils::repository_to_array($str);
 
+=head2 JSON
+
+  TeXLive::TLUtils::encode_json($ref);
+  TeXLive::TLUtils::True();
+  TeXLive::TLUtils::False();
+
 =head1 DESCRIPTION
 
 =cut
@@ -112,6 +119,7 @@
   $TeXLive::TLDownload::net_lib_avail
     $::checksum_method $::gui_mode $::machinereadable $::no_execute_actions
     $::regenerate_all_formats
+  $JSON::false $JSON::true
 );
 
 BEGIN {
@@ -185,6 +193,10 @@
     &nulldev
     &get_full_line
     &sort_archs
+    &repository_to_array
+    &encode_json
+    &True
+    &False
   );
   @EXPORT = qw(setup_programs download_file process_logging_options
                tldie tlwarn info log debug ddebug dddebug debug_hash
@@ -1933,7 +1945,7 @@
   # man
   my $top_man_dir = "$Master/texmf-dist/doc/man";
   debug("$mode symlinks for man pages to $sys_man from $top_man_dir\n");
-  if (! -d $top_man_dir && $mode eq "add") {
+  if (! -d $top_man_dir) {
     ; # better to be silent?
     #info("skipping add of man symlinks, no source directory $top_man_dir\n");
   } else {
@@ -3187,7 +3199,7 @@
 sub debug {
   my $str = "D:" . join("", @_);
   return if ($::opt_verbosity < 1);
-  logit(\*STDOUT, 1, $str);
+  logit(\*STDERR, 1, $str);
   for my $i (@::debug_hook) {
     &{$i}($str);
   }
@@ -3209,7 +3221,7 @@
 sub ddebug {
   my $str = "DD:" . join("", @_);
   return if ($::opt_verbosity < 2);
-  logit(\*STDOUT, 2, $str);
+  logit(\*STDERR, 2, $str);
   for my $i (@::ddebug_hook) {
     &{$i}($str);
   }
@@ -3231,7 +3243,7 @@
 sub dddebug {
   my $str = "DDD:" . join("", @_);
   return if ($::opt_verbosity < 3);
-  logit(\*STDOUT, 3, $str);
+  logit(\*STDERR, 3, $str);
   for my $i (@::dddebug_hook) {
     &{$i}($str);
   }
@@ -4128,8 +4140,207 @@
 }
 
 
+sub repository_to_array {
+  my $r = shift;
+  my %r;
+  my @repos = split ' ', $r;
+  if ($#repos == 0) {
+    # only one repo, this is the main one!
+    $r{'main'} = $repos[0];
+    return %r;
+  }
+  for my $rr (@repos) {
+    my $tag;
+    my $url;
+    # decode spaces and % in reverse order
+    $rr =~ s/%20/ /g;
+    $rr =~ s/%25/%/g;
+    $tag = $url = $rr;
+    if ($rr =~ m/^([^#]+)#(.*)$/) {
+      $tag = $2;
+      $url = $1;
+    }
+    $r{$tag} = $url;
+  }
+  return %r;
+}
+
+=item C<encode_json($ref)>
+
+Returns the JSON representation of the object C<$ref> is pointing at.
+This tries to load the C<JSON> Perl module, and uses it if available,
+otherwise falls back to module internal conversion.
+
+The used backend can be selected by setting the environment variable
+C<TL_JSONMODE> to either C<json> or C<texlive> (all other values are
+ignored). If C<json> is requested and the C<JSON> module cannot be loaded
+the program terminates.
+
+=cut
+
+my $TLTrueValue = 1;
+my $TLFalseValue = 0;
+my $TLTrue = \$TLTrueValue;
+my $TLFalse = \$TLFalseValue;
+bless $TLTrue, 'TLBOOLEAN';
+bless $TLFalse, 'TLBOOLEAN';
+
+our $jsonmode = "";
+
+=item C<True()>
+=item C<False()>
+
+these two function must be used to get proper JSON C<true> and C<false> 
+in the output independent of the backend used.
+
+=cut
+
+sub True {
+  ensure_json_available();
+  if ($jsonmode eq "json") {
+    return($JSON::true);
+  } else {
+    return($TLTrue);
+  }
+}
+sub False {
+  ensure_json_available();
+  if ($jsonmode eq "json") {
+    return($JSON::false);
+  } else {
+    return($TLFalse);
+  }
+}
+
+sub ensure_json_available {
+  return if ($jsonmode);
+  # check the environment for mode to use:
+  # $ENV{'TL_JSONMODE'} = texlive | json
+  my $envdefined = 0;
+  if ($ENV{'TL_JSONMODE'}) {
+    $envdefined = 1;
+    if ($ENV{'TL_JSONMODE'} eq "texlive") {
+      $jsonmode = "texlive";
+      debug("texlive json module used!\n");
+      return;
+    } elsif ($ENV{'TL_JSONMODE'} eq "json") {
+      # nothing to do
+    } else {
+      tlwarn("Unsupported mode \'$ENV{TL_JSONMODE}\' set in TL_JSONMODE, ignoring it!");
+      $envdefined = 0;
+    }
+  }
+  return if ($jsonmode); # was set to texlive
+  eval { require JSON; };
+  if ($@) {
+    # that didn't work out, use home-grown json
+    if ($envdefined) {
+      # environment asks for JSON but cannot be loaded, die!
+      tldie("env variable TL_JSONMODE request JSON module but cannot be load!\n");
+    }
+    $jsonmode = "texlive";
+    debug("texlive json module used!\n");
+  } else {
+    $jsonmode = "json";
+    my $json = JSON->new;
+    debug("JSON " . $json->backend . " used!\n");
+  }
+}
+
+sub encode_json {
+  my $val = shift;
+  ensure_json_available();
+  if ($jsonmode eq "json") {
+    my $utf8_encoded_json_text = JSON::encode_json($val);
+    return $utf8_encoded_json_text;
+  } else {
+    my $type = ref($val);
+    if ($type eq "") {
+      tldie("encode_json: accept only refs: $val");
+    } elsif ($type eq 'SCALAR') {
+      return(scalar_to_json($$val));
+    } elsif ($type eq 'ARRAY') {
+      return(array_to_json($val));
+    } elsif ($type eq 'HASH') {
+      return(hash_to_json($val));
+    } elsif ($type eq 'REF') {
+      return(encode_json($$val));
+    } elsif (Scalar::Util::blessed($val)) {
+      if ($type eq "TLBOOLEAN") {
+        return($$val ? "true" : "false");
+      } else {
+        tldie("encode_json: unsupported blessed object");
+      }
+    } else {
+      tldie("encode_json: unsupported format $type");
+    }
+  }
+}
+
+sub scalar_to_json {
+  sub looks_like_numeric {
+    # code from JSON/backportPP.pm
+    my $value = shift;
+    no warnings 'numeric';
+    # detect numbers
+    # string & "" -> ""
+    # number & "" -> 0 (with warning)
+    # nan and inf can detect as numbers, so check with * 0
+    return unless length((my $dummy = "") & $value);
+    return unless 0 + $value eq $value;
+    return 1 if $value * 0 == 0;
+    return -1; # inf/nan
+  }
+  my $val = shift;
+  if (defined($val)) {
+    if (looks_like_numeric($val)) {
+      return("$val");
+    } else {
+      return(string_to_json($val));
+    }
+  } else {
+    return("null");
+  }
+}
+
+sub string_to_json {
+  my $val = shift;
+  my %esc = (
+    "\n" => '\n',
+    "\r" => '\r',
+    "\t" => '\t',
+    "\f" => '\f',
+    "\b" => '\b',
+    "\"" => '\"',
+    "\\" => '\\\\',
+    "\'" => '\\\'',
+  );
+  $val =~ s/([\x22\x5c\n\r\t\f\b])/$esc{$1}/g;
+  return("\"$val\"");
+}
+
+sub hash_to_json {
+  my $hr = shift;
+  my @retvals;
+  for my $k (keys(%$hr)) {
+    my $val = $hr->{$k};
+    push @retvals, "\"$k\":" . encode_json(\$val);
+  }
+  my $ret = "{" . join(",", @retvals) . "}";
+  return($ret);
+}
+
+sub array_to_json {
+  my $hr = shift;
+  my $ret = "[" . join(",", map { encode_json(\$_) } @$hr) . "]";
+  return($ret);
+}
+
+
+
 =back
 =cut
+
 1;
 __END__
 

Modified: branches/stable/source/src/texk/web2c/lib/ChangeLog
===================================================================
--- branches/stable/source/src/texk/web2c/lib/ChangeLog	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/web2c/lib/ChangeLog	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,3 +1,7 @@
+2018-01-01  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
+
+	* printversion.c: 2017 ---> 2018.
+
 2017-10-21  Akira Kakuto  <kakuto at fuk.kindai.ac.jp>
 
 	* openclose.c: If opened fname is a directory in

Modified: branches/stable/source/src/texk/web2c/lib/printversion.c
===================================================================
--- branches/stable/source/src/texk/web2c/lib/printversion.c	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/web2c/lib/printversion.c	2018-01-01 23:12:21 UTC (rev 789)
@@ -51,7 +51,7 @@
 #endif
 
   if (copyright_holder) {
-    printf ("Copyright 2017 %s.\n", copyright_holder);
+    printf ("Copyright 2018 %s.\n", copyright_holder);
     if (!author)
       author = copyright_holder;
   }

Modified: branches/stable/source/src/texk/web2c/pdftexdir/tounicode.c
===================================================================
--- branches/stable/source/src/texk/web2c/pdftexdir/tounicode.c	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/texk/web2c/pdftexdir/tounicode.c	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,5 +1,5 @@
 /*
-Copyright 2006-2014 Han The Thanh, <thanh at pdftex.org>
+Copyright 2006-2017 Han The Thanh, <thanh at pdftex.org>
 
 This file is part of pdfTeX.
 
@@ -75,7 +75,7 @@
         p++;                    /* ignore leading spaces */
     l = strlen(p);
     while (l > 0 && p[l - 1] == ' ')
-        l--;                    /* ignore traling spaces */
+        l--;                    /* ignore trailing spaces */
     valid_unistr = 1;           /* a unicode value is the most common case */
     for (i = 0; i < l; i++) {
         if (p[i] == ' ')
@@ -117,6 +117,11 @@
     } else {
         i = sscanf(p, "%lX", &(gu->code));
         assert(i == 1);
+        if (gu->code < 0 || gu->code > 0x10FFFF) {
+            pdftex_warn("ToUnicode: value out of range [0,10FFFF]: %X",
+                        gu->code);
+            gu->code = UNI_UNDEF;
+        }
     }
     aa = avl_probe(glyph_unicode_tree, gu);
     assert(aa != NULL);

Modified: branches/stable/source/src/utils/README
===================================================================
--- branches/stable/source/src/utils/README	2017-12-16 18:19:19 UTC (rev 788)
+++ branches/stable/source/src/utils/README	2018-01-01 23:12:21 UTC (rev 789)
@@ -1,4 +1,4 @@
-$Id: README 45150 2017-08-28 06:43:57Z kakuto $
+$Id: README 46169 2017-12-30 22:19:20Z kakuto $
 Public domain.  Originally written 2005 by Karl Berry.
 
 Extra utilities we (optionally) compile for TeX Live.
@@ -10,7 +10,7 @@
   see http://tug.org/texlive/build.html#asymptote
   and tlpkg/bin/tl-update-asy
 
-autosp 2017-07-14 - checked 26jul17
+autosp 2017-12-26 - checked 29dec17
   http://ctan.org/pkg/autosp
 
 devnag - from devanagari package installed in texmf-dist.
@@ -80,9 +80,9 @@
 # if you can't build libsigsegv, pass --ignore-absence-of-libsigsegv
 # when running configure for clisp.
 
-ffcall_ver=libffcall-1.13-20170225
+ffcall_ver=libffcall-1.13
 cd $clisp_basedir
-$wget http://www.haible.de/bruno/gnu/$ffcall_ver.tar.gz
+$wget https://ftp.gnu.org/gnu/libsigsegv/$ffcall_ver.tar.gz
 gzip -dc $ffcall_ver.tar.gz | tar xf -
 cd $ffcall_ver
 ./configure -C --prefix=$clisp_toolsdir --disable-shared --enable-static \



More information about the pdftex-commits mailing list