Commit 9d7b0167 authored by Dmitry Antipov's avatar Dmitry Antipov
Browse files

* font.h (struct font_driver): Remove get_outline and free_outline;

not used by any font driver.
* ftfont.c (ftfont_driver):
* macfont.m (macfont_driver):
* nsfont.m (nsfont_driver):
* w32font.c (w32font_driver):
* w32uniscribe.c (uniscribe_font_driver):
* xfont.c (xfont_driver): Related users changed.
* xselect.c (x_get_window_property): Use convenient xmalloc.
Call to xfree only if some data was really allocated.
parent 2b13ca4d
2014-07-04 Dmitry Antipov <dmantipov@yandex.ru>
* font.h (struct font_driver): Remove get_outline and free_outline;
not used by any font driver.
* ftfont.c (ftfont_driver):
* macfont.m (macfont_driver):
* nsfont.m (nsfont_driver):
* w32font.c (w32font_driver):
* w32uniscribe.c (uniscribe_font_driver):
* xfont.c (xfont_driver): Related users changed.
* xselect.c (x_get_window_property): Use convenient xmalloc.
Call to xfree only if some data was really allocated.
2014-07-03 Dmitry Antipov <dmantipov@yandex.ru>
On MS-Windows, display busy cursor on all GUI frames.
......
......@@ -613,15 +613,6 @@ struct font_driver
#endif /* HAVE_WINDOW_SYSTEM */
/* Optional.
Return an outline data for glyph-code CODE of FONT. The format
of the outline data depends on the font-driver. */
void *(*get_outline) (struct font *font, unsigned code);
/* Optional.
Free OUTLINE (that is obtained by the above method). */
void (*free_outline) (struct font *font, void *outline);
/* Optional.
Get coordinates of the INDEXth anchor point of the glyph whose
code is CODE. Store the coordinates in *X and *Y. Return 0 if
......
......@@ -538,8 +538,6 @@ struct font_driver ftfont_driver =
NULL, /* draw */
ftfont_get_bitmap,
NULL, /* free_bitmap */
NULL, /* get_outline */
NULL, /* free_outline */
ftfont_anchor_point,
#ifdef HAVE_LIBOTF
ftfont_otf_capability,
......
......@@ -1580,8 +1580,6 @@ static int macfont_variation_glyphs (struct font *, int c,
macfont_draw,
NULL, /* get_bitmap */
NULL, /* free_bitmap */
NULL, /* get_outline */
NULL, /* free_outline */
NULL, /* anchor_point */
NULL, /* otf_capability */
NULL, /* otf_drive */
......
......@@ -649,7 +649,7 @@ static int nsfont_draw (struct glyph_string *s, int from, int to, int x, int y,
nsfont_encode_char,
nsfont_text_extents,
nsfont_draw,
/* excluded: get_bitmap, free_bitmap, get_outline, free_outline,
/* excluded: get_bitmap, free_bitmap,
anchor_point, otf_capability, otf_driver,
start_for_frame, end_for_frame, shape */
};
......
......@@ -757,19 +757,6 @@ w32font_get_bitmap (struct font *font, unsigned code,
static void
w32font_free_bitmap (struct font *font, struct font_bitmap *bitmap);
*/
/* w32 implementation of get_outline for font backend.
Optional.
Return an outline data for glyph-code CODE of FONT. The format
of the outline data depends on the font-driver.
static void *
w32font_get_outline (struct font *font, unsigned code);
*/
/* w32 implementation of free_outline for font backend.
Optional.
Free OUTLINE (that is obtained by the above method).
static void
w32font_free_outline (struct font *font, void *outline);
*/
/* w32 implementation of anchor_point for font backend.
Optional.
Get coordinates of the INDEXth anchor point of the glyph whose
......@@ -2557,8 +2544,6 @@ struct font_driver w32font_driver =
w32font_draw,
NULL, /* get_bitmap */
NULL, /* free_bitmap */
NULL, /* get_outline */
NULL, /* free_outline */
NULL, /* anchor_point */
NULL, /* otf_capability */
NULL, /* otf_drive */
......
......@@ -604,8 +604,6 @@ uniscribe_encode_char (struct font *font, int c)
int uniscribe_get_bitmap (struct font *font, unsigned code,
struct font_bitmap *bitmap, int bits_per_pixel);
void uniscribe_free_bitmap (struct font *font, struct font_bitmap *bitmap);
void * uniscribe_get_outline (struct font *font, unsigned code);
void uniscribe_free_outline (struct font *font, void *outline);
int uniscribe_anchor_point (struct font *font, unsigned code,
int index, int *x, int *y);
int uniscribe_start_for_frame (struct frame *f);
......@@ -981,8 +979,6 @@ struct font_driver uniscribe_font_driver =
w32font_draw,
NULL, /* get_bitmap */
NULL, /* free_bitmap */
NULL, /* get_outline */
NULL, /* free_outline */
NULL, /* anchor_point */
uniscribe_otf_capability, /* Defined so (font-get FONTOBJ :otf) works. */
NULL, /* otf_drive - use shape instead. */
......
......@@ -146,7 +146,7 @@ struct font_driver xfont_driver =
xfont_encode_char,
xfont_text_extents,
xfont_draw,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
xfont_check,
NULL, /* get_variation_glyphs */
NULL, /* filter_properties */
......
......@@ -1299,9 +1299,7 @@ x_get_window_property (Display *display, Window window, Atom property,
if (total_size_max < bytes_remaining)
goto size_overflow;
total_size = bytes_remaining;
data = malloc (total_size + 1);
if (! data)
goto memory_exhausted;
data = xmalloc (total_size + 1);
/* Now read, until we've gotten it all. */
while (bytes_remaining)
......@@ -1352,9 +1350,7 @@ x_get_window_property (Display *display, Window window, Atom property,
if (remaining_lim < 0 || remaining_lim < bytes_remaining)
goto size_overflow;
total_size = offset + bytes_gotten + bytes_remaining;
data1 = realloc (data, total_size + 1);
if (! data1)
goto memory_exhausted;
data1 = xrealloc (data, total_size + 1);
data = data1;
}
......@@ -1386,14 +1382,10 @@ x_get_window_property (Display *display, Window window, Atom property,
return;
size_overflow:
free (data);
if (data)
xfree (data);
unblock_input ();
memory_full (SIZE_MAX);
memory_exhausted:
free (data);
unblock_input ();
memory_full (total_size + 1);
}
/* Use xfree, not XFree, to free the data obtained with this function. */
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment