cairo_set_source_rgb(cr, pango_font_red, pango_font_green, pango_font_blue);
pango_cairo_update_layout(cr, layout);
pango_layout_get_pixel_size(layout, NULL, &height);
- /* Center the piece of text vertically if its height is smaller than the
- * cached font height, and just let "high" symbols fall out otherwise. */
- int yoffset = abs(height - savedFont->height) / 2;
+ /* Center the piece of text vertically. */
+ int yoffset = (height - savedFont->height) / 2;
cairo_move_to(cr, x, y - yoffset);
pango_cairo_show_layout(cr, layout);
i3Font font;
font.type = FONT_TYPE_NONE;
+ font.pattern = NULL;
/* No XCB connction, return early because we're just validating the
* configuration file. */
error->error_code);
}
}
- if (error != NULL) {
- free(error);
- }
+ free(error);
font.pattern = sstrdup(pattern);
LOG("Using X font %s\n", pattern);
case FONT_TYPE_XCB: {
/* Close the font and free the info */
xcb_close_font(conn, savedFont->specific.xcb.id);
- if (savedFont->specific.xcb.info)
- free(savedFont->specific.xcb.info);
+ free(savedFont->specific.xcb.info);
break;
}
case FONT_TYPE_PANGO:
* a crash. Plus, the user will see the error in their log. */
fprintf(stderr, "Could not get text extents (X error code %d)\n",
error->error_code);
+ free(error);
return savedFont->specific.xcb.info->max_bounds.character_width * text_len;
}