| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Avoid declaring a variables in a for loop initialization, so that we
won't accidentally break building on older compilers.
|
|
|
|
|
|
|
|
| |
There were a few cases left where empty attribute
lists could lead to crashes. This was observed causing
crashes in gnumeric.
Testcases included.
|
|
|
|
|
| |
This was showing up as the colored Google link
in the gtk4-demo links demo losing its colors.
|
|
|
|
|
|
|
|
|
|
| |
The Pango API exposes harfbuzz types, and so we need to depend on
HarfBuzz-0.0 when generating our introspection data.
The introspection data on HarfBuzz was fixed upstream, even though the
current introspected API is not stellar.
Fixes: #458
|
|\
| |
| |
| |
| | |
Revert "PangoLanguage: Fix clang -Wcast-align warnings"
See merge request GNOME/pango!203
|
| |
| |
| |
| |
| |
| | |
This reverts commit 3a9398fb989ff571aa40405987e20d548717687e.
This commit was causing crashes, see #481
|
| |
| |
| |
| |
| | |
When allowing attributes to be NULL, we need
to take that into account here too.
|
|\ \
| | |
| | |
| | |
| | | |
Fix pango_attr_list_change
See merge request GNOME/pango!200
|
| | |
| | |
| | |
| | |
| | |
| | | |
There were some breakage introduced in the porting
to GPtrArray - we sometimes ran into assertions, and
sometimes forgot to add the new attribute altogether.
|
| | |
| | |
| | |
| | | |
The methods take a PangoFont, but they are really PangoXftFont methods.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The Pango sub-libraries have symbols in the pango_<something> namespace,
but the identifiers are in the Pango one, which makes consumers of the
introspection data either get something like:
PangoCairo.show_layout()
with a bunch of warnings caused by the type macros not following the
appropriate pattern, or:
PangoCairo.cairo_show_layout()
which breaks introspection ABI.
We can use the __GI_SCANNER__ pre-processor symbol to trick the scanner
into generating the appropriate representation of the API, while keeping
the C consumers happy with the existing—albeit wildly inconsistent with
best practices for GObject-based libraries—symbols.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
itemize: Work around gtk2 brokenness
Closes #480
See merge request GNOME/pango!198
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
GTK 2 apparently manages to call pango_itemize_with_base_dir
with a non-zero length for a string that contains 0 characters.
That in turn causes pango_log2vis_get_embedding_levels to
return NULL, and things go downhill from there.
A test is included.
Fixes: #480
|
|/
|
|
|
|
|
|
| |
The Pango sub-libraries sadly hijack the Pango namespace for their
symbols, but use a different namespace for the identifiers.
This fixes an introspection ABI incompatible change that made its way in
Pango 1.45.
|
|
|
|
|
|
|
| |
Apparently, gtk2 assumes that calling pango_layout_set_attributes
guarantees that the attribute list gains a ref.
Fixes: #479
|
| |
|
|
|
|
| |
pango_tab_array_new might not actually allocate anything for ->tabs.
|
|
|
|
|
| |
Make sure we have a valid iter here, which is of course always the case
in reality.
|
|
|
|
| |
I believe this was meant to assign to variable and not res.
|
|
|
|
|
|
|
|
|
| |
We're assigning EMBEDDING_CHANGED to state->changed in
update_embedding_end(). At that point state->changed is uninitialized,
but that doesn't matter since we later override the value anyway.
Just pull the initialization to earlier in that function, which assigns
EMBEDDING_CHANGED anyway, so doesn't change anything.
|
|
|
|
|
|
|
|
|
| |
We never assign a value to l_index. Also, we pass on language_index to
hb_ot_layout_script_select_language, even though the last parameter of
that function is not nullable, while our language_index parameter is.
Fix this to pass &l_index to hb_ot_layout_script_select_language, which
is what I believe should happen.
|
|
|
|
|
|
|
|
| |
Avoiding this warning:
../pango/pangocairo-render.c:506:19: warning: assigning to 'char *' from 'const char *' discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
for (row = 0, p = name; row < rows; row++)
^ ~~~~
|
| |
|
| |
|
|
|
|
| |
It's only very rarely used, and will become even less important later.
|
|
|
|
| |
One less linked list.
|
|
|
|
|
| |
pango_layout_get_effective_attributes can return
NULL. But not all callers were handling that.
|
|\
| |
| |
| |
| | |
Wip/baedert/for master2
See merge request GNOME/pango!190
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Make it clearer that we're not going to modify the attribute
|
| | |
|
| |
| |
| |
| | |
A private function to find empty attribute lists
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Instead of getting the logical rect and then not using it, try not to
compute it in the first place.
|
| | |
|
| |
| |
| |
| |
| |
| | |
This is a pretty weak check (think e.g. a layout containing the text
"a\na"), but it's very easy to do and still hits quite a few cases in
real-world applications.
|
|\ \
| | |
| | |
| | |
| | | |
For master
See merge request GNOME/pango!184
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Since we have them as separate namespaces, we need separate pkg-config
file in order to let Vala consume them.
|
| | |
| | |
| | |
| | |
| | | |
The pkgconfig.generate() function has default values for the version and
installation path argument, and we're already using them.
|
| | |
| | |
| | |
| | |
| | |
| | | |
We don't have introspection for fontconfig and freetype2 data types.
While we do have introspection for Harfbuzz, it doesn't really work.
|
| | |
| | |
| | |
| | |
| | | |
This way consumers of the deprecated API can get appropriate memory
management for a couple of boxed types.
|