Behdad Esfahbod
89cbd4d953
Add MSVC pragma for UTF-8 source code
...
Not sure we have any right now; motivated by this:
https://bugzilla.gnome.org/show_bug.cgi?id=747772
2015-04-13 12:27:08 -07:00
Behdad Esfahbod
713f99ff61
Merge pull request #99 from khaledhosny/introspection-fixes2
...
More ntrospection fixes
2015-04-10 14:34:05 -07:00
Khaled Hosny
22524a514f
[bindings] Fix hb_buffer_get_segment_properties
...
Annotate the output parameter.
2015-04-10 22:57:38 +02:00
Behdad Esfahbod
1086f21e54
Merge branch 'hb-fc'
2015-04-10 12:21:04 -07:00
Khaled Hosny
04f89e8f7d
[bindings] Fix ownership of returned hb_language_t
...
It should not be freed by the caller.
2015-04-10 18:17:02 +02:00
Konstantin Ritt
855a5d7cb8
Fix build on WEC2013
...
Based on patch from Björn Breitmeyer
2015-04-10 17:18:01 +04:00
Behdad Esfahbod
eb0bf3ae66
Relax inert checks
...
Previously, when creating an object from inert inputs (eg:
"hb_font_create(hb_face_get_empty())") we returned the inert
empty object. This is not helpful as there are legitimate
usecases to do that.
We now never return the inert object unless allocation failed.
Tests are revised to reflect.
2015-04-09 19:16:57 -07:00
Behdad Esfahbod
9c974360fe
Minor rename
2015-04-09 12:04:14 -07:00
Behdad Esfahbod
f3b170bdd9
Minor
2015-04-08 16:26:24 -07:00
Behdad Esfahbod
2958f2c147
Fixup
2015-04-08 16:26:16 -07:00
Behdad Esfahbod
b931e0b0ce
Fix warnings
...
Part of https://github.com/behdad/harfbuzz/pull/68
2015-04-08 14:43:33 -07:00
Behdad Esfahbod
cdcdfe61b9
Err, instead of warn, if mutex / atomic / unicode funcs are missing
...
Hopefully this results in fewer badly built HarfBuzz integrations.
2015-04-08 13:25:04 -07:00
Behdad Esfahbod
fc3c59a1d7
Fix unused var warnings
2015-04-08 13:04:29 -07:00
Konstantin Ritt
3f174cd020
Minor refactoring to the atomics implementation
...
s/atomic_int/atomic_int_impl/ and s/atomic_ptr/atomic_ptr_impl/
to bring it in par with hb_mutex_impl_t, then re-introduce
hb_atomic_int_t as a wrapper around hb_atomic_int_impl_t.
In hb_reference_count_t, make it clear the non-atomic get and set
are intentional due to nature of the cases they are used in
(comparison to -1 and the debug output/tracing).
2015-04-08 13:04:22 -07:00
Behdad Esfahbod
24930d544e
Minor
2015-04-08 12:52:06 -07:00
Behdad Esfahbod
45a8b46f47
Allow implementing atomic and mutex ops in config
...
Motivated by
https://github.com/behdad/harfbuzz/pull/92
2015-04-08 12:49:38 -07:00
Behdad Esfahbod
3fe4e92bc5
Minor
2015-04-08 12:49:23 -07:00
Behdad Esfahbod
ce01ad7c2f
MSVC 2015 supports snprintf and not _snprintf
2015-04-01 11:05:59 -07:00
Behdad Esfahbod
560718862f
Move WinCE define to better place
2015-04-01 11:04:58 -07:00
Behdad Esfahbod
aee685086c
Fix VC++ /analyze warnings
...
out\debug\hb-buffer-deserialize-text.rl(47) : warning C6001: Using
uninitialized memory 'pos'.
2015-03-26 14:13:53 -04:00
Khaled Hosny
a394bb6670
[bindings] Fix *_from_string functions
...
Without the element-type they will be getting garbage, at least with
Python.
2015-03-22 20:29:10 +02:00
Behdad Esfahbod
9e401f6890
Fix reverse_range() for empty range
...
Fixes coretext notdef loop consisting of all default_ignorable glyphs
https://code.google.com/p/chromium/issues/detail?id=464755
2015-03-20 16:08:38 -04:00
Behdad Esfahbod
98e3ea8e34
Fix hb-uniscribe build
2015-03-04 12:03:39 -08:00
Behdad Esfahbod
8ac345e5c0
Fix reverse_range() to only reverse alt array if positions are used
...
In hb-coretext, when we were using scratch buffer for book-keeping,
a reverse_range() caused by the notdef-insertion loop could mess up
our log_clusters. Ouch!
2015-03-02 16:06:55 -08:00
Behdad Esfahbod
5f541f8f7b
Minor refactoring
2015-02-25 15:43:35 -08:00
Behdad Esfahbod
ef79bdf73b
Minor
2015-02-25 15:43:35 -08:00
Behdad Esfahbod
68e04afbb1
Typo
2015-02-25 15:43:34 -08:00
Behdad Esfahbod
55553699b3
Minor
2015-02-25 15:43:34 -08:00
Behdad Esfahbod
5175300fba
[layout] Fix comparison of GlyphID and hb_codepoint_t
...
Before, the IntType::cmp functions providing this and was truncating
the hb_codepoint_t to 16bits before comparison. I have no idea how
this was never discovered, and I'm too lazy to try to reproduce this
with Pango (which uses non-16bit codepoint numbers for missing glyphs).
2015-02-25 15:43:34 -08:00
Behdad Esfahbod
7cce809cb1
Remove unused (and wrong as of a few commits ago) cmp() function
2015-02-25 15:43:34 -08:00
Behdad Esfahbod
8e3d4bae03
Minor
2015-02-25 15:43:33 -08:00
Behdad Esfahbod
f47cf1f12d
Minor
2015-02-25 15:43:33 -08:00
Behdad Esfahbod
640b66c634
[layout] If lookup has only one subtable, move the forward loop down to subtable
...
I was hoping to see a nice speedup, but it resulted in a very minor one.
2015-02-25 15:43:33 -08:00
Behdad Esfahbod
e2f50f2a7e
[layout] Add apply_forward / apply_backward
2015-02-25 15:43:32 -08:00
Behdad Esfahbod
1d4a328472
[layout] Remove unneeded return value from apply()
2015-02-25 15:43:32 -08:00
Behdad Esfahbod
bbdd6fd21c
Minor simpilfy BEInt
2015-02-25 15:43:32 -08:00
Behdad Esfahbod
88a399acdc
Optimize IntType comparison to avoid branches for 16bit numbers
2015-02-25 15:43:32 -08:00
Behdad Esfahbod
37de2d5331
Minor simplify IntType
2015-02-25 15:43:31 -08:00
Behdad Esfahbod
bd047d3b7f
[layout] Minor
2015-02-25 15:43:31 -08:00
Behdad Esfahbod
b9d3f60520
[layout] Minor
2015-02-25 15:43:31 -08:00
Behdad Esfahbod
1a2322134a
[layout] Don't check glyph props against lookup flags when recursing
...
Shouldn't be needed. I have a hard time imagining this breaking any
legitimate use case.
2015-02-25 15:43:30 -08:00
Behdad Esfahbod
095a1257cc
[layout] Port sanitize() to use dispatch()
...
Needed some rework of Extension table. Hopefully I got it right, and
the new template usage doesn't break any compilers...
2015-02-25 15:43:30 -08:00
Behdad Esfahbod
758fb20630
Remove unused macro
2015-02-25 15:43:30 -08:00
Behdad Esfahbod
40c58923cb
[layout] Refactor Lookup::dispatch()
2015-02-25 15:43:30 -08:00
Behdad Esfahbod
70366f5d19
[layout] Refactor get_subtable()
2015-02-25 15:43:29 -08:00
Behdad Esfahbod
f72f326aea
Minor
2015-02-25 15:43:29 -08:00
Behdad Esfahbod
8e36ccfd4f
[layout] Use dispatch() for add_coverage()
2015-02-25 15:43:29 -08:00
Behdad Esfahbod
50b8dc79da
[layout] Add may_dispatch()
...
No functional change right now.
2015-02-25 15:43:29 -08:00
Behdad Esfahbod
de2118ed7a
Make sanitize() a const method
...
This makes a lot of code safer. We only try modifying the object in one
place, after making sure it's safe to do so. So, do a const_cast<> in
that one place...
2015-02-25 15:43:28 -08:00
Behdad Esfahbod
6759ed95a3
Minor
2015-02-25 15:43:28 -08:00