texlive[64010] Build/source/texk/web2c/luatexdir: luatex: sync with
commits+kakuto at tug.org
commits+kakuto at tug.org
Sat Jul 30 22:58:50 CEST 2022
Revision: 64010
http://tug.org/svn/texlive?view=revision&revision=64010
Author: kakuto
Date: 2022-07-30 22:58:50 +0200 (Sat, 30 Jul 2022)
Log Message:
-----------
luatex: sync with the upstream
Modified Paths:
--------------
trunk/Build/source/texk/web2c/luatexdir/ChangeLog
trunk/Build/source/texk/web2c/luatexdir/lang/texlang.c
trunk/Build/source/texk/web2c/luatexdir/luatex_svnversion.h
Modified: trunk/Build/source/texk/web2c/luatexdir/ChangeLog
===================================================================
--- trunk/Build/source/texk/web2c/luatexdir/ChangeLog 2022-07-30 20:41:51 UTC (rev 64009)
+++ trunk/Build/source/texk/web2c/luatexdir/ChangeLog 2022-07-30 20:58:50 UTC (rev 64010)
@@ -1,3 +1,9 @@
+2022-07-30 Luigi Scarso <luigi.scarso at gmail.com>
+ * Backtrack replace pointer when successive disc in exceptions (H.Hagen)
+
+2022-07-30 Luigi Scarso <luigi.scarso at gmail.com>
+ * Take exception pre/port disc font from wordstart (H.Hagen)
+
2022-05-23 Luigi Scarso <luigi.scarso at gmail.com>
* Fixed mp_begin_iteration (H.Hagen)
Modified: trunk/Build/source/texk/web2c/luatexdir/lang/texlang.c
===================================================================
--- trunk/Build/source/texk/web2c/luatexdir/lang/texlang.c 2022-07-30 20:41:51 UTC (rev 64009)
+++ trunk/Build/source/texk/web2c/luatexdir/lang/texlang.c 2022-07-30 20:58:50 UTC (rev 64010)
@@ -358,7 +358,9 @@
f = get_cur_font();
}
for (g = pre; g != null; g = vlink(g)) {
- font(g) = f;
+ if (! font(g)) {
+ font(g) = f;
+ }
if (attr != null) {
delete_attribute_ref(node_attr(g));
node_attr(g) = attr;
@@ -366,7 +368,9 @@
}
}
for (g = post; g != null; g = vlink(g)) {
- font(g) = f;
+ if (! font(g)) {
+ font(g) = f;
+ }
if (attr != null) {
delete_attribute_ref(node_attr(g));
node_attr(g) = attr;
@@ -531,9 +535,14 @@
The sequence from |wordstart| to |r| can contain only normal characters it
could be faster to modify a halfword pointer and return an integer
+ We now take the font from the wordstart (as in \LUAMETATEX) but leave the
+ rest as it is, because we don't want to break compatibility (end June 2022).
+ We make a copy now of the parent and hope for the best. Backporting would be
+ too intrusive so this has to do. It went unnoticed for ages anyway.
+
*/
-static halfword find_exception_part(unsigned int *j, unsigned int *uword, int len)
+static halfword find_exception_part(unsigned int *j, unsigned int *uword, int len, halfword parent)
{
halfword g = null, gg = null;
register unsigned i = *j;
@@ -541,13 +550,16 @@
i++;
while (i < (unsigned) len && uword[i + 1] != '}') {
if (g == null) {
- gg = new_char(0, (int) uword[i + 1]);
+ /* gg = new_char(font(parent), (int) uword[i + 1]); */
+ gg = copy_node(parent);
g = gg;
} else {
- halfword s = new_char(0, (int) uword[i + 1]);
+ /* halfword s = new_char(font(parent), (int) uword[i + 1]); */
+ halfword s = copy_node(parent);
couple_nodes(g, s);
- g = vlink(g);
+ g = s;
}
+ character(g) = (int) uword[i + 1];
i++;
}
*j = ++i;
@@ -614,12 +626,12 @@
halfword gg, hh, replace = null;
int repl;
/*tex |pre| */
- gg = find_exception_part(&i, uword, (int) len);
+ gg = find_exception_part(&i, uword, (int) len, wordstart);
if (i == len || uword[i + 1] != '{') {
tex_error("broken pattern 1", PAT_ERROR);
}
/*tex |post| */
- hh = find_exception_part(&i, uword, (int) len);
+ hh = find_exception_part(&i, uword, (int) len, wordstart);
if (i == len || uword[i + 1] != '{') {
tex_error("broken pattern 2", PAT_ERROR);
}
@@ -693,6 +705,7 @@
/*tex check if we have two exceptions in a row */
if (uword[i + 1] == '{') {
i--;
+t = alink(t);
}
} else {
t = vlink(t);
Modified: trunk/Build/source/texk/web2c/luatexdir/luatex_svnversion.h
===================================================================
--- trunk/Build/source/texk/web2c/luatexdir/luatex_svnversion.h 2022-07-30 20:41:51 UTC (rev 64009)
+++ trunk/Build/source/texk/web2c/luatexdir/luatex_svnversion.h 2022-07-30 20:58:50 UTC (rev 64010)
@@ -1,4 +1,4 @@
#ifndef luatex_svn_revision_h
#define luatex_svn_revision_h
-#define luatex_svn_revision 7528
+#define luatex_svn_revision 7532
#endif
More information about the tex-live-commits
mailing list.