<feed xmlns='http://www.w3.org/2005/Atom'>
<title>halibut/in_sfnt.c, branch master</title>
<subtitle>My halibut tree</subtitle>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/'/>
<entry>
<title>Revamp of the Halibut error handling mechanism.</title>
<updated>2012-08-29T18:13:11+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2012-08-29T18:13:11+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=1489dc15967970576d08f3f2b22c6e1c939bcbcf'/>
<id>1489dc15967970576d08f3f2b22c6e1c939bcbcf</id>
<content type='text'>
I'm not quite sure why I ever thought it was a good idea to have a
central variadic error() function taking an integer error code
followed by some list of arguments that depend on that code. It now
seems obvious to me that it's a much more sensible idea to have a
separate function per error, so that we can check at compile time that
the arguments to each error call are of the right number and type! So
I've done that instead.

A side effect is that the errors are no longer formatted into a
fixed-size buffer before going to stderr, so I can remove all the
%.200s precautions in the format strings.

[originally from svn r9639]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
I'm not quite sure why I ever thought it was a good idea to have a
central variadic error() function taking an integer error code
followed by some list of arguments that depend on that code. It now
seems obvious to me that it's a much more sensible idea to have a
separate function per error, so that we can check at compile time that
the arguments to each error call are of the right number and type! So
I've done that instead.

A side effect is that the errors are no longer formatted into a
fixed-size buffer before going to stderr, so I can remove all the
%.200s precautions in the format strings.

[originally from svn r9639]
</pre>
</div>
</content>
</entry>
<entry>
<title>Turn the numeric parameter to err_sfntbadglyph from wchar_t to</title>
<updated>2008-07-09T17:06:29+00:00</updated>
<author>
<name>Simon Tatham</name>
<email>anakin@pobox.com</email>
</author>
<published>2008-07-09T17:06:29+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=c35b288fccdbd17dd88f57c665d0b71739e8fc6c'/>
<id>c35b288fccdbd17dd88f57c665d0b71739e8fc6c</id>
<content type='text'>
unsigned int, after a correspondent mentioned that DJGPP produces a
very scary warning about integer promotion making use of the former
in va_arg non-portable. Whether or not that's standards-justifiable,
it's certainly the case that we were casting _to_ wchar_t from
unsigned int in all cases of this error actually being used, so the
simplest thing is just to transfer the number through va_arg as
unsigned.

[originally from svn r8112]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
unsigned int, after a correspondent mentioned that DJGPP produces a
very scary warning about integer promotion making use of the former
in va_arg non-portable. Whether or not that's standards-justifiable,
it's certainly the case that we were casting _to_ wchar_t from
unsigned int in all cases of this error actually being used, so the
simplest thing is just to transfer the number through va_arg as
unsigned.

[originally from svn r8112]
</pre>
</div>
</content>
</entry>
<entry>
<title>Cope with TrueType fonts with slightly broken cmaps, just ignoring code points</title>
<updated>2007-12-02T18:38:31+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-12-02T18:38:31+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=5527360cf7e5b68a1954874c82128690ed7df488'/>
<id>5527360cf7e5b68a1954874c82128690ed7df488</id>
<content type='text'>
that can't be resolved (apart from warning about it).

[originally from svn r7800]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
that can't be resolved (apart from warning about it).

[originally from svn r7800]
</pre>
</div>
</content>
</entry>
<entry>
<title>Recognise a couple more types of Unicode 'cmap'.  Also fail if a format 4</title>
<updated>2007-12-02T00:01:30+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-12-02T00:01:30+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=b524d1b0431294e2943dc4cb35e9a5892b600a55'/>
<id>b524d1b0431294e2943dc4cb35e9a5892b600a55</id>
<content type='text'>
'cmap' refers to a character off the end of the glyphIndexArray.

[originally from svn r7798]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
'cmap' refers to a character off the end of the glyphIndexArray.

[originally from svn r7798]
</pre>
</div>
</content>
</entry>
<entry>
<title>Cope with TrueType fonts that have duplicate glyph names by renaming glyphs</title>
<updated>2007-02-13T00:12:16+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-02-13T00:12:16+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=7daf0d6079b52255d280841aa2906bb90abe3878'/>
<id>7daf0d6079b52255d280841aa2906bb90abe3878</id>
<content type='text'>
as necessary.  The algorithm for ensuring that the new name is unused is
partly Gareth's fault.

[originally from svn r7277]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
as necessary.  The algorithm for ensuring that the new name is unused is
partly Gareth's fault.

[originally from svn r7277]
</pre>
</div>
</content>
</entry>
<entry>
<title>Cope with TrueType fonts without a 'post' table or with a format 3 'post'</title>
<updated>2007-02-12T22:21:03+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-02-12T22:21:03+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=f42514d9eafc14726d17d47aff575f0a4a8e7aec'/>
<id>f42514d9eafc14726d17d47aff575f0a4a8e7aec</id>
<content type='text'>
table (which doesn't specify glyph names), constructing an arbitrary list
of glyph names for ourselves.

[originally from svn r7276]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
table (which doesn't specify glyph names), constructing an arbitrary list
of glyph names for ourselves.

[originally from svn r7276]
</pre>
</div>
</content>
</entry>
<entry>
<title>Presumed typo preventing compilation in r7269.</title>
<updated>2007-02-11T17:30:49+00:00</updated>
<author>
<name>Jacob Nevins</name>
<email>jacobn@chiark.greenend.org.uk</email>
</author>
<published>2007-02-11T17:30:49+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=3cf31c6f5103cc936eb43a2a8bc6a7bb8d64f3e6'/>
<id>3cf31c6f5103cc936eb43a2a8bc6a7bb8d64f3e6</id>
<content type='text'>
[originally from svn r7270]
[r7269 == 6c660b39aeae18c4652a48318bff3373bb535d92]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[originally from svn r7270]
[r7269 == 6c660b39aeae18c4652a48318bff3373bb535d92]
</pre>
</div>
</content>
</entry>
<entry>
<title>Improved error handling in sfnt support.  No more calls to abort()!</title>
<updated>2007-02-11T15:19:10+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-02-11T15:19:10+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=6c660b39aeae18c4652a48318bff3373bb535d92'/>
<id>6c660b39aeae18c4652a48318bff3373bb535d92</id>
<content type='text'>
[originally from svn r7269]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[originally from svn r7269]
</pre>
</div>
</content>
</entry>
<entry>
<title>Add support for extracting kerning tables from 'kern' tables.  Only format 0</title>
<updated>2007-02-10T22:34:44+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-02-10T22:34:44+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=6e50bd3a744e0f1ca596636aa0c096de18ffc355'/>
<id>6e50bd3a744e0f1ca596636aa0c096de18ffc355</id>
<content type='text'>
(simple pair kerning) is supported, but with both Apple- and Microsoft-format
headers.

Also reference Microsoft's TrueType specification in comments, since I've used
that to write some of this code.

[originally from svn r7268]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(simple pair kerning) is supported, but with both Apple- and Microsoft-format
headers.

Also reference Microsoft's TrueType specification in comments, since I've used
that to write some of this code.

[originally from svn r7268]
</pre>
</div>
</content>
</entry>
<entry>
<title>Now that glyph indices are exposed to bk_pdf.c, move CMap generation there,</title>
<updated>2007-02-10T13:35:52+00:00</updated>
<author>
<name>Ben Harris</name>
<email>bjh21@bjh21.me.uk</email>
</author>
<published>2007-02-10T13:35:52+00:00</published>
<link rel='alternate' type='text/html' href='https://www.franklinwei.com/cgit/halibut/commit/?id=f4b2ef94c1200ec17dad6a4502308f54371c9694'/>
<id>f4b2ef94c1200ec17dad6a4502308f54371c9694</id>
<content type='text'>
since that seems closer to being where it belongs.

[originally from svn r7262]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
since that seems closer to being where it belongs.

[originally from svn r7262]
</pre>
</div>
</content>
</entry>
</feed>
