Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
DISCONTINUED:openSUSE:11.1:Update
pango
pango-bnc492733-web-segfault.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File pango-bnc492733-web-segfault.patch of Package pango
commit 2ff046f31303201dae7aafef262a28542c88223c Author: Behdad Esfahbod <behdad@behdad.org> Date: Mon Apr 6 19:49:02 2009 -0400 [layout] Truncate final whitespace in the line before ellipsizing Not after. Also fixes invalid memory access in case line was both wrapped and ellipsized. diff --git a/pango/pango-layout.c b/pango/pango-layout.c index b1b75a4..4326eb4 100644 --- a/pango/pango-layout.c +++ b/pango/pango-layout.c @@ -5166,18 +5166,21 @@ pango_layout_line_postprocess (PangoLayoutLine *line, ParaBreakState *state, gboolean wrapped) { - PangoLayoutRun *last_run = line->runs->data; gboolean ellipsized = FALSE; - /* NB: the runs are in reverse order at this point, since we prepended them to the list + DEBUG ("postprocessing", line, state); + + /* Truncate the logical-final whitespace in the line if we broke the line at it */ + if (wrapped) + /* The runs are in reverse order at this point, since we prepended them to the list. + * So, the first run is the last logical run. */ + zero_line_final_space (line, state, line->runs->data); /* Reverse the runs */ line->runs = g_slist_reverse (line->runs); - DEBUG ("postprocessing", line, state); - /* Ellipsize the line if necessary */ if (G_UNLIKELY (state->line_width >= 0 && @@ -5186,11 +5189,6 @@ pango_layout_line_postprocess (PangoLayoutLine *line, ellipsized = _pango_layout_line_ellipsize (line, state->attrs, state->line_width); } - /* Truncate the logical-final whitespace in the line if we broke the line at it - */ - if (wrapped) - zero_line_final_space (line, state, last_run); - DEBUG ("after removing final space", line, state); /* Now convert logical to visual order
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor