summaryrefslogtreecommitdiff
path: root/pango
Commit message (Collapse)AuthorAgeFilesLines
* CosmeticMatthias Clasen2020-08-211-2/+2
|
* Merge branch 'issue-482' into 'master'Matthias Clasen2020-08-201-23/+28
|\ | | | | | | | | | | | | Fixes pango_win32_font_map_load_font when font contains fallback families Closes #482 See merge request GNOME/pango!217
| * Fixes pango_win32_font_map_load_font when font contains fallback familiesEvgenii Gurianov2020-08-041-23/+28
| |
* | Add sysprof tracing supportMatthias Clasen2020-08-193-0/+94
| | | | | | | | | | Add support for adding sysprof marks. Strongly inspired by equivalent GLib support.
* | Handle analysis.font being NULLMatthias Clasen2020-08-181-0/+3
| | | | | | | | | | | | | | | | I don't think this is a legitimate concern, but it is faster to add a check than to argue about the use of pango on fontless systems. Fixes: #495
* | Avoid a dead assignmentMatthias Clasen2020-08-181-1/+1
| | | | | | | | | | As pointed out in #495, we were assigning logical_rect->y twice in a row here. Once is enough.
* | Merge branch 'cairo-fontconfig-buglet' into 'master'Matthias Clasen2020-08-182-9/+17
|\ \ | | | | | | | | | | | | Use proper fontconfig config object See merge request GNOME/pango!222
| * | cairo: Use the proper FcConfigMatthias Clasen2020-08-181-1/+1
| | | | | | | | | | | | | | | | | | When calling into FcConfig api, passing NULL means "use the default config". But we may have a set config that we should be using for all fontconfig calls.
| * | Don't call FcFontSetSort twiceMatthias Clasen2020-08-151-7/+12
| | | | | | | | | | | | | | | | | | We can do the format filtering on the unsorted font lists. Sorting the same list twice may be fast, but there's still some setup overhead.
| * | Speed up font format filteringMatthias Clasen2020-08-151-1/+4
| | | | | | | | | | | | | | | We were needlessly duplicating patters when we could have just referenced them.
* | | Merge branch 'wip/smcv/revert-renderer-abi-break' into 'master'Matthias Clasen2020-08-162-12/+12
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | renderer: Move overline to priv data structure Closes #497 See merge request GNOME/pango!220
| * | | renderer: Move overline to priv data structureSimon McVittie2020-08-162-12/+12
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts the ABI break caused by adding the overline to the public data structure, and is binary- and source-compatible with Pango 1.45.0 and older, but not compatible with versions 1.45.1 to 1.46.0 inclusive. Resolves: https://gitlab.gnome.org/GNOME/pango/-/issues/497 Bug-Debian: https://bugs.debian.org/968337 Signed-off-by: Simon McVittie <smcv@debian.org>
* | | Correct a typo in pangowin32.cFelix Yan2020-08-121-1/+1
|/ /
* | Adjust "Since" tags to refer to 1.46Rico Tzschichholz2020-08-061-2/+2
|/
* Fix g-i annotation of pango_parse_color_with_alpha and add since tagRico Tzschichholz2020-08-041-1/+3
|
* Merge branch 'issue-489' into 'master'Khaled Hosny2020-08-031-0/+6
|\ | | | | | | | | | | | | Initialise out arguments Closes #489 See merge request GNOME/pango!211
| * Initialise out argumentsEmmanuele Bassi2020-07-031-0/+6
| | | | | | | | | | | | | | If we bail out early, we end up with uninitialised data and no way for a caller to know that happened. Fixes: #489
* | Merge branch 'parse-color-with-alpha' into 'master'Matthias Clasen2020-08-034-42/+64
|\ \ | | | | | | | | | | | | Export pango_parse_color_with_alpha See merge request GNOME/pango!215
| * | Export pango_parse_color_with_alphaMatthias Clasen2020-07-314-39/+60
| | | | | | | | | | | | | | | This will be useful to make GdkRGBA support hex formats with alpha.
| * | pango-color: Tweak semantics of _pango_parse_color_with_alphaMatthias Clasen2020-07-312-4/+5
| | | | | | | | | | | | | | | | | | | | | Make it return 0xffff if alpha is not present (this will be more convenient when we use this function in GdkRGBA). Update all users.
* | | Merge branch 'master' into 'master'Matthias Clasen2020-08-033-5/+5
|\ \ \ | |/ / |/| | | | | | | | Remove hb-glib use See merge request GNOME/pango!213
| * | Remove hb-glib useEbrahim Byagowi2020-07-293-5/+5
| |/ | | | | | | | | | | glib isn't hard dependency to harfbuzz so we like to make embedders be able to compile harfbuzz for Pango without hb-glib now that hb_glib_get_unicode_funcs use is gone releases ago.
* | layout: Avoid a crash with short stringsMatthias Clasen2020-07-301-0/+1
|/ | | | | | | | | | | You can call pango_layout_set_text() with a length that is longer than the string (and there's code in the wild that does that). We try to handle it by only looking at the initial segment of the text, but we are forgetting to set layout->length to the length of that segment, leading us to access beyond the string end later. This fixes #490
* pangocoretext: Fix Cairo scalingKhaled Hosny2020-06-261-1/+5
| | | | | | Take font scale into account when creating HarfBuzz fonts. Fixes https://gitlab.gnome.org/GNOME/pango/-/issues/488
* Merge branch 'fix-pre-c99' into 'master'Khaled Hosny2020-06-251-2/+4
|\ | | | | | | | | pango-attributes.c: Fix on older compilers See merge request GNOME/pango!208
| * pango-attributes.c: Fix on older compilersChun-wei Fan2020-06-241-2/+4
| | | | | | | | | | Avoid declaring a variables in a for loop initialization, so that we won't accidentally break building on older compilers.
* | fcfontmap: Always reject unsupported font formatsKhaled Hosny2020-06-251-26/+26
|/ | | | | Fixes https://gitlab.gnome.org/GNOME/pango/-/issues/484 and https://gitlab.gnome.org/GNOME/pango/-/issues/457
* Fix crashes with empty attribute listsMatthias Clasen2020-06-221-52/+54
| | | | | | | | There were a few cases left where empty attribute lists could lead to crashes. This was observed causing crashes in gnumeric. Testcases included.
* Fix another problem with pango_attr_list_changeMatthias Clasen2020-06-171-7/+11
| | | | | This was showing up as the colored Google link in the gtk4-demo links demo losing its colors.
* Include HarfBuzz when generating introspection dataEmmanuele Bassi2020-06-111-1/+1
| | | | | | | | | | 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
* Merge branch 'fix-gtk2-crash' into 'master'Matthias Clasen2020-06-111-15/+15
|\ | | | | | | | | Revert "PangoLanguage: Fix clang -Wcast-align warnings" See merge request GNOME/pango!203
| * Revert "PangoLanguage: Fix clang -Wcast-align warnings"Matthias Clasen2020-06-111-15/+15
| | | | | | | | | | | | This reverts commit 3a9398fb989ff571aa40405987e20d548717687e. This commit was causing crashes, see #481
* | Fix a crash in pango_attr_list_equalMatthias Clasen2020-06-101-0/+3
| | | | | | | | | | When allowing attributes to be NULL, we need to take that into account here too.
* | Merge branch 'fix-attr-lists' into 'master'Matthias Clasen2020-06-101-3/+9
|\ \ | | | | | | | | | | | | Fix pango_attr_list_change See merge request GNOME/pango!200
| * | Fix pango_attr_list_changeMatthias Clasen2020-06-101-3/+9
| | | | | | | | | | | | | | | | | | There were some breakage introduced in the porting to GPtrArray - we sometimes ran into assertions, and sometimes forgot to add the new attribute altogether.
* | | Annotate the type for PangoXftFont methodsEmmanuele Bassi2020-06-101-6/+6
| | | | | | | | | | | | The methods take a PangoFont, but they are really PangoXftFont methods.
* | | Use the appropriate namespace for Pango sub-librariesEmmanuele Bassi2020-06-1010-22/+127
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* | Merge branch 'fix-another-crash' into 'master'Matthias Clasen2020-06-101-1/+1
|\ \ | | | | | | | | | | | | | | | | | | itemize: Work around gtk2 brokenness Closes #480 See merge request GNOME/pango!198
| * | itemize: Work around gtk2 brokennessMatthias Clasen2020-06-101-1/+1
| |/ | | | | | | | | | | | | | | | | | | | | 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
* | Use the correct identifier for Pango sub-librariesEmmanuele Bassi2020-06-101-5/+5
|/ | | | | | | | 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.
* Fix a crash in gtk2Matthias Clasen2020-06-101-5/+0
| | | | | | | Apparently, gtk2 assumes that calling pango_layout_set_attributes guarantees that the attribute list gains a ref. Fixes: #479
* layout: Ignore setting the attributes to the same listTimm Bäder2020-06-101-0/+4
|
* pango-tabs: Avoid passing NULL to memcpyTimm Bäder2020-06-101-1/+2
| | | | pango_tab_array_new might not actually allocate anything for ->tabs.
* pango-layout: Help static analysis a bitTimm Bäder2020-06-101-0/+2
| | | | | Make sure we have a valid iter here, which is of course always the case in reality.
* pangofc-fontmap: Avoid a dead assignmentTimm Bäder2020-06-101-1/+1
| | | | I believe this was meant to assign to variable and not res.
* pango-context: avoid assignment to uninitialized valueTimm Bäder2020-06-101-1/+2
| | | | | | | | | 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.
* pango-ot-info: Fix an uninitialized valueTimm Bäder2020-06-101-3/+4
| | | | | | | | | 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.
* pangocairo-render: Make a local constTimm Bäder2020-06-101-1/+1
| | | | | | | | 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++) ^ ~~~~
* attrs: Remove unused iterator memberTimm Bäder2020-06-101-1/+0
|
* attrs: Save attribute list in a GPtrArrayTimm Bäder2020-06-102-302/+231
|