mem leaks
This commit is contained in:
parent
a97b2f75fb
commit
ef4bec071b
2 changed files with 6 additions and 13 deletions
|
@ -34,22 +34,13 @@
|
||||||
static void measure_font(const RrInstance *inst, RrFont *f)
|
static void measure_font(const RrInstance *inst, RrFont *f)
|
||||||
{
|
{
|
||||||
PangoFontMetrics *metrics;
|
PangoFontMetrics *metrics;
|
||||||
gchar *locale, *p;
|
|
||||||
|
|
||||||
/* get the default language from the locale
|
|
||||||
(based on gtk_get_default_language in gtkmain.c) */
|
|
||||||
locale = g_strdup(setlocale(LC_CTYPE, NULL));
|
|
||||||
if ((p = strchr(locale, '.'))) *p = '\0'; /* strip off the . */
|
|
||||||
if ((p = strchr(locale, '@'))) *p = '\0'; /* strip off the @ */
|
|
||||||
|
|
||||||
/* measure the ascent and descent */
|
/* measure the ascent and descent */
|
||||||
metrics = pango_context_get_metrics(inst->pango, f->font_desc,
|
metrics = pango_context_get_metrics(inst->pango, f->font_desc,
|
||||||
pango_language_from_string(locale));
|
pango_language_get_default());
|
||||||
f->ascent = pango_font_metrics_get_ascent(metrics);
|
f->ascent = pango_font_metrics_get_ascent(metrics);
|
||||||
f->descent = pango_font_metrics_get_descent(metrics);
|
f->descent = pango_font_metrics_get_descent(metrics);
|
||||||
pango_font_metrics_unref(metrics);
|
pango_font_metrics_unref(metrics);
|
||||||
|
|
||||||
g_free(locale);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
RrFont *RrFontOpen(const RrInstance *inst, const gchar *name, gint size,
|
RrFont *RrFontOpen(const RrInstance *inst, const gchar *name, gint size,
|
||||||
|
|
|
@ -48,7 +48,7 @@ static xmlNodePtr find_node(xmlNodePtr n, const gchar *names[]);
|
||||||
static gboolean find_int(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
static gboolean find_int(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
gint *integer, gint lower, gint upper);
|
gint *integer, gint lower, gint upper);
|
||||||
static gboolean find_string(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
static gboolean find_string(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
const gchar **string);
|
gchar **string);
|
||||||
static gboolean find_color(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
static gboolean find_color(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
RrColor **color, gchar *alpha);
|
RrColor **color, gchar *alpha);
|
||||||
static gboolean find_point(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
static gboolean find_point(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
|
@ -72,7 +72,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
|
||||||
ParseState ps;
|
ParseState ps;
|
||||||
xmlNodePtr root;
|
xmlNodePtr root;
|
||||||
RrJustify winjust, mtitlejust;
|
RrJustify winjust, mtitlejust;
|
||||||
const gchar *str;
|
gchar *str;
|
||||||
RrTheme *theme;
|
RrTheme *theme;
|
||||||
|
|
||||||
if (name) {
|
if (name) {
|
||||||
|
@ -154,6 +154,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
|
||||||
winjust = RR_JUSTIFY_RIGHT;
|
winjust = RR_JUSTIFY_RIGHT;
|
||||||
else if (strcmp(str, "center") == 0)
|
else if (strcmp(str, "center") == 0)
|
||||||
winjust = RR_JUSTIFY_CENTER;
|
winjust = RR_JUSTIFY_CENTER;
|
||||||
|
g_free(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (menu_title_font) {
|
if (menu_title_font) {
|
||||||
|
@ -168,6 +169,7 @@ RrTheme* RrThemeNew(const RrInstance *inst, gchar *name,
|
||||||
mtitlejust = RR_JUSTIFY_RIGHT;
|
mtitlejust = RR_JUSTIFY_RIGHT;
|
||||||
else if (strcmp(str, "center") == 0)
|
else if (strcmp(str, "center") == 0)
|
||||||
mtitlejust = RR_JUSTIFY_CENTER;
|
mtitlejust = RR_JUSTIFY_CENTER;
|
||||||
|
g_free(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (menu_item_font) {
|
if (menu_item_font) {
|
||||||
|
@ -1516,7 +1518,7 @@ static gboolean find_int(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean find_string(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
static gboolean find_string(ParseState *ps, xmlNodePtr n, const gchar *names[],
|
||||||
const gchar **string)
|
gchar **string)
|
||||||
{
|
{
|
||||||
if ((n = find_node(n, names))) {
|
if ((n = find_node(n, names))) {
|
||||||
*string = parse_string(ps->doc, n);
|
*string = parse_string(ps->doc, n);
|
||||||
|
|
Loading…
Reference in a new issue