aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJesse Luehrs <doy@tozt.net>2014-04-20 23:05:25 -0400
committerJesse Luehrs <doy@tozt.net>2014-04-20 23:05:25 -0400
commite1a9ad048f6ffcf0f475294c51f491d4d6e07e3e (patch)
treeb6211bd0902ec9d6330e08baa4409e382ec26b0e
parentd6f244f7d9f52462bafb608f23494707eeb24751 (diff)
downloadrunes-e1a9ad048f6ffcf0f475294c51f491d4d6e07e3e.tar.gz
runes-e1a9ad048f6ffcf0f475294c51f491d4d6e07e3e.zip
clean up some more memory
-rw-r--r--src/config.c3
-rw-r--r--src/display.c2
-rw-r--r--src/term.c3
3 files changed, 7 insertions, 1 deletions
diff --git a/src/config.c b/src/config.c
index 0becda1..a7f9163 100644
--- a/src/config.c
+++ b/src/config.c
@@ -26,7 +26,7 @@ void runes_config_init(RunesTerm *t, int argc, char *argv[])
static void runes_config_set_defaults(RunesTerm *t)
{
- t->font_name = "monospace 10";
+ t->font_name = strdup("monospace 10");
t->bold_is_bright = 1;
t->bold_is_bold = 1;
t->audible_bell = 1;
@@ -147,6 +147,7 @@ static void runes_config_process_config_file(RunesTerm *t, FILE *config_file)
static void runes_config_set(RunesTerm *t, char *key, char *val)
{
if (!strcmp(key, "font")) {
+ free(t->font_name);
t->font_name = runes_config_parse_string(val);
}
else if (!strcmp(key, "bold_is_bright")) {
diff --git a/src/display.c b/src/display.c
index 474d972..f4471e2 100644
--- a/src/display.c
+++ b/src/display.c
@@ -454,6 +454,8 @@ void runes_display_cleanup(RunesTerm *t)
cairo_pattern_destroy(t->colors[i]);
cairo_pattern_destroy(t->brightcolors[i]);
}
+ cairo_pattern_destroy(t->fgdefault);
+ cairo_pattern_destroy(t->bgdefault);
cairo_pattern_destroy(t->cursorcolor);
cairo_destroy(t->cr);
}
diff --git a/src/term.c b/src/term.c
index fe21752..7bf8c98 100644
--- a/src/term.c
+++ b/src/term.c
@@ -1,3 +1,5 @@
+#include <stdlib.h>
+
#include "runes.h"
void runes_term_init(RunesTerm *t, int argc, char *argv[])
@@ -30,4 +32,5 @@ void runes_term_cleanup(RunesTerm *t)
runes_display_cleanup(t);
runes_window_backend_cleanup(t);
runes_pty_backend_cleanup(t);
+ free(t->font_name);
}