| Summary: |
segfaults in _cairo_xlib_surface_add_glyph |
| Product: |
cairo
|
Reporter: |
Marc Brockschmidt <he> |
| Component: |
xlib backend | Assignee: |
Carl Worth <cworth> |
| Status: |
RESOLVED
DUPLICATE
|
QA Contact: |
cairo-bugs mailing list <cairo-bugs> |
| Severity: |
major
|
|
|
| Priority: |
high
|
|
|
| Version: |
1.2.4 | |
|
| Hardware: |
Other | |
|
| OS: |
OpenBSD | |
|
| Whiteboard: |
|
|
i915 platform:
|
|
i915 features:
|
|
| Attachments: |
Patch fir #8398
|
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.
Heya, Due to a programming error, _cairo_xlib_surface_add_glyph segfaults in some (all?) cases on OpenBSD/X.org 6.8. Patch: --- src/cairo-xlib-surface.c.orig Fri Aug 18 16:20:16 2006 +++ src/cairo-xlib-surface.c Fri Sep 22 12:10:29 2006 @@ -2439,7 +2439,7 @@ break; case CAIRO_FORMAT_ARGB32: if (_native_byte_order_lsb() != (ImageByteOrder (dpy) == LSBFirst)) { - unsigned int c = glyph_surface->stride * glyph_surface->height; + int c = glyph_surface->stride * glyph_surface->height; unsigned char *d; unsigned char *new, *n; Later on, the same 'c' was used for a "while ((c -= 4) >= 0)" loop, which lead to, eh, "interesting" results.