summaryrefslogtreecommitdiff
path: root/libre-testing/texlive-bin-libre/luatex-r4449-radical-rule-thickness.patch
blob: f925a1a9347058a1894ec5d6b1f68f4180893d57 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Index: source/texk/web2c/luatexdir/tex/mlist.w
===================================================================
--- source/texk/web2c/luatexdir/tex/mlist.w	(revision 4448)
+++ source/texk/web2c/luatexdir/tex/mlist.w	(revision 4449)
@@ -1798,7 +1798,17 @@
         theta = fraction_rule(cur_style);
         y = var_delimiter(left_delimiter(q), cur_size,
                           height(x) + depth(x) + clr + theta, NULL, cur_style);
-        theta = height(y);
+	/* If |y| is a composite then set |theta| to the height of its top
+           character, else set it to the height of |y|. */
+        if (list_ptr(y) != null
+            && type(list_ptr(y)) == hlist_node
+            && list_ptr(list_ptr(y)) != null
+            && type(list_ptr(list_ptr(y))) == glyph_node) {     /* and it should be */
+            theta = char_height(font(list_ptr(list_ptr(y))),
+                           character(list_ptr(list_ptr(y))));
+        } else {
+            theta = height(y);
+        }
     } else {
         y = var_delimiter(left_delimiter(q), cur_size,
                           height(x) + depth(x) + clr + theta, NULL, cur_style);