aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-04-19 14:36:56 -0400
committerJesse Luehrs <doy@tozt.net>2014-04-19 14:36:56 -0400
commit7e200a662f306b9bd7ca58ef1fcf8d2b978394da (patch)
tree9dd7be2181c8fbca33a71c93383ce8e2d4e3ad3c
parent643f4525dba3a059aa901111d00500f2c0ef1501 (diff)
downloadrunes-7e200a662f306b9bd7ca58ef1fcf8d2b978394da.tar.gz
runes-7e200a662f306b9bd7ca58ef1fcf8d2b978394da.zip
free a few more things
-rw-r--r--display.c16
1 files changed, 13 insertions, 3 deletions
diff --git a/display.c b/display.c
index 8c24c56..0b3d1ec 100644
--- a/display.c
+++ b/display.c
@@ -65,11 +65,19 @@ void runes_display_set_window_size(RunesTerm *t)
pango_cairo_update_layout(t->cr, t->layout);
}
else {
+ PangoAttrList *attrs;
+ PangoFontDescription *font_desc;
+
+ attrs = pango_attr_list_new();
+ font_desc = pango_font_description_from_string(t->font_name);
+
t->layout = pango_cairo_create_layout(t->cr);
- pango_layout_set_attributes(t->layout, pango_attr_list_new());
+ pango_layout_set_attributes(t->layout, attrs);
+ pango_layout_set_font_description(t->layout, font_desc);
+
+ pango_attr_list_unref(attrs);
+ pango_font_description_free(font_desc);
}
- pango_layout_set_font_description(
- t->layout, pango_font_description_from_string(t->font_name));
cairo_save(t->cr);
@@ -425,6 +433,7 @@ void runes_display_cleanup(RunesTerm *t)
{
int i;
+ g_object_unref(t->layout);
for (i = 0; i < 8; ++i) {
cairo_pattern_destroy(t->colors[i]);
}
@@ -457,6 +466,7 @@ static void runes_display_recalculate_font_metrics(RunesTerm *t)
descent = pango_font_metrics_get_descent(metrics);
t->fonty = PANGO_PIXELS(ascent + descent);
+ pango_font_metrics_unref(metrics);
pango_font_description_free(desc);
if (!t->layout) {
g_object_unref(context);