| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
Reported by @dohyunkim: https://github.com/lualatex/luaotfload/pull/364#issuecomment-226059150
Under certain circumstances, update_names() was invoked with an empty
table instead of a correctly initialized one, breaking the assumptions
of the db populating code.
This commit also guards more strongly against this kind of oversight and
tidies up the db constructor.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Some of the more absurd aspects of fonts ;) This will fork inkscape for
the actual SVG processing.
|
| |
|
|
|
|
|
|
|
| |
The new addfeature() as of 499160de78a1 accesses utf8.len() which wasn’t
imported at this point. Another import, utf8.char(), became irrelevant.
Spotted by @doyunkim
|
|
|
|
|
|
|
|
|
| |
Fix issue #344
The paths changed a while ago making a change necessary. We can’t just
replace the path because older versions of the tree would fail,
rendering bisection unusable. We compensate by testing the candidate
directories beforehand.
|
|
|
|
|
|
| |
This corresponds to commit a274872832cd on the mirror repo. The changes
since then were numerous but seem to introduce a couple new files we
didn’t ask for =) Later.
|
|
|
|
|
|
|
|
|
| |
Addresses #359 and #325
To avoid duplicate entries, paths have to be resolved before collecting
them. This necessitates loop detection of some sort, currently
implemented naively as a flat table containing the directories already
traversed.
|
| |
|
|
|
|
|
|
|
|
| |
This was introduced with commit 67ad1263d032 during a code removal
frenzy.
Many thanks to @grizzilus for pointing that one out:
https://github.com/phi-gamma/luaotfload/commit/67ad1263d0328fc74928a9a1d06ea9aa0ee9a116#commitcomment-17726875
|
|
|
|
|
|
|
|
|
| |
Fix #358
The typographic ascender value from the metrics (Windows metrics) table
comes prescaled by the fontloader but we scaled it nevertheless. This is
not true, however, for the value in the metrics table. Fix the access
method to treat the values differently.
|
|
|
|
|
|
|
|
|
| |
Address issue #356
The DejaVu Family needs stricter handling of fallback choices so we take
the font’s avertised width into consideration. This used to be easier
with the old loader since it had some decent heuristics in place for the
more or less reliable “fontstyle_name”.
|
|
|
|
|
|
|
|
| |
Remove all the FF stuff and the config option. The transition is
complete, no need to keep these things around any longer.
Since we won’t be going back to the FF loader we might as well dispose
of the junk identifiers and the translation layer as well.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The crash happens with these broken files MS used to ship:
beef66370e7124eb683514ad9ad07576 palabi.ttf
975972a205fd91a532d1b7433281af70 palab.ttf
be4590eba976dace111b6686f6dade52 palai.ttf
96261bb90c9babbf8042ce7f43200d65 pala.ttf
on account of a broken rule in the “s_s_l” lookup. The change removes
the entire lookup in this case since otherwise the rest of the font
behaves *very* strange.
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
Add a message that includes the information relevant for
troubleshooting.
Due to the spammy nature of the message printed by Fontspec this is not
exactly useful with Latex so disabled by default for now.
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
The assumption that the AFM/PFB pair will reside in the same directory
together is wrong for TeX Live. Hence the new lookup against kpse.
|
| |
|
|
|
|
|
|
| |
Fixes #349 and #357.
Also the new AFM code is due, let’s see what else we need to use it.
|
|
|
|
|
| |
This info is indeed valuable on top of the commit hash, thanks to @jfbu
who complained about its absence.
|
|
|
|
|
|
|
| |
With commit 8c0dd0ebbedd kern accesses were fixed but the results never
tested for the lookup, which caused the default which is set up before
to be nil’ed. Fix this by reusing the value we initialized the kern
factor to.
|
|
|
|
|
|
|
|
|
|
|
| |
With the new loader, the ``units_per_em`` field resides under the
toplevel TFM structure with the key ``units``. For AFM fonts, it is not
fount under the metadata table too, which we are currently querying.
Thus we prefer the main value, falling back on metadata only in case it
is missing.
At this occasion, tidy up our unit lookup helper and use that wherever
we need access to the values ourselves.
|
|
|
|
|
|
|
| |
Defining a combination did not override the default file: lookup so
every font defined that way will at font embedding time trigger a reload
of the index on account of a missing file. Setting the ``combo:`` lookup
will prevent the issue.
|
|
|
|
|
|
|
| |
Due to the origin in other parts of Luatex, some messages in this file
were logged under the “load” facility; corrected. Also, the combo
mechanism still spits debug levels of noise at log level zero; raised to
two.
|
|
|
|
|
|
|
|
| |
Adress issue #350
For some reason our stack copy of the current node gets double-freed.
Since the “components” field will probably vanish soon, we can get by
for now by skipping the explicit free.
|
|
|
|
| |
This could become the common check eventually.
|
|
|
|
|
|
|
|
|
|
| |
The version check was removed by accident in commit 5ce60cc98a30. This
isn’t normally a problem except when people start to run the Pretest
version on ancient Luatex binaries … In any case, the check must be
present. While we’re at it, make the error messages consistent between
the tool and a live TeX run. This can’t cover the fact that there is no
(direct) means of determining the Luatex version when not running in TeX
mode, so the checks still aren’t equivalent.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Fix issue #351
The letterspace node handler dereferences kern values of non-existant
character information under some circumstances, causing Luatex to crash.
To avoid this crash, check more thoroughly for the presence of the
fields accessed.
Discovered by @schlcht
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows to domesticate packages that quite disrespectfully only use
“anon:” lookups. Example from the test repo:
\documentclass{scrartcl}
\usepackage{fontspec}
\directlua{
config.luaotfload = config.actions.apply
(config.luaotfload, { run = { anon_sequence = { "my" } } })
}
\directlua{
luatexbase.add_to_callback(
"luaotfload.resolve_font",
function (spec) spec.name = "comic.ttf" end,
"user.openbsd_style")
}
\setmainfont{Adobe Premier Deluxe Overpriced}
\begin{document}
There is no escape.
\end{document}
|
|
|
|
|
|
|
|
| |
The arguments to “--find” on the command line avoided calling the real
index API functions and used crude approximations instead. In order to
make “--find” obey the new “anon-sequence” configuration item, it needs
to access the normal resolvers instead. This requires certain
adaptations to allow for a fallback on the “file:” lookup.
|
| |
|
|
|
|
|
|
|
|
|
| |
Implements #263
The resolvers have already been decoupled a while ago but the goal of
allowing the sequence to be reordered at will was still outstanding.
Add a config option “anon-sequence” that is parsed as a comma-delimited
list of sequence components.
|
|
|
|
|
|
|
|
| |
Fix issue #344
An incomplete matching rule for determining configuration values caused
return bytes (0x0d) to leak into the configuration if Windows style
newlines are used. Fixed by adapting the pattern.
|
|
|
|
|
|
| |
@dohyunkim pointed out that due to the too broad criteria, secondary
style variants like “heavy”, “black” ended up getting picked over the
actual “bold”.
|
| |
|
|
|
|
|
|
|
| |
When adapting to the new loader we repeated the mistake of classifying
“bold” faces by too broad criteria, thereby sabotaging the recognition
of large families from Adobe. Restore the old behavior by only treating
those faces as bold fallback that advertise and exact weight of 700.
|
| |
|