summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pango/shape.c12
-rw-r--r--tests/testmisc.c7
2 files changed, 19 insertions, 0 deletions
diff --git a/pango/shape.c b/pango/shape.c
index 401c9ec1..0b757b1a 100644
--- a/pango/shape.c
+++ b/pango/shape.c
@@ -370,5 +370,17 @@ pango_shape_with_flags (const gchar *item_text,
}
}
}
+ else
+ {
+ for (i = 0; i < glyphs->num_glyphs; i++)
+ {
+ glyphs->glyphs[i].geometry.width =
+ PANGO_UNITS_ROUND (glyphs->glyphs[i].geometry.width);
+ glyphs->glyphs[i].geometry.x_offset =
+ PANGO_UNITS_ROUND (glyphs->glyphs[i].geometry.x_offset);
+ glyphs->glyphs[i].geometry.y_offset =
+ PANGO_UNITS_ROUND (glyphs->glyphs[i].geometry.y_offset);
+ }
+ }
}
}
diff --git a/tests/testmisc.c b/tests/testmisc.c
index fe2e9075..69fc3019 100644
--- a/tests/testmisc.c
+++ b/tests/testmisc.c
@@ -22,7 +22,10 @@
#include "config.h"
#include <glib.h>
#include <pango/pangocairo.h>
+
+#ifdef HAVE_CAIRO_FREETYPE
#include <pango/pango-ot.h>
+#endif
/* test that we don't crash in shape_tab when the layout
* is such that we don't have effective attributes
@@ -245,6 +248,7 @@ test_gravity_for_script (void)
}
}
+#ifdef HAVE_CAIRO_FREETYPE
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
static void
@@ -264,6 +268,7 @@ test_language_to_tag (void)
}
G_GNUC_END_IGNORE_DEPRECATIONS
+#endif
static void
test_fallback_shape (void)
@@ -319,7 +324,9 @@ main (int argc, char *argv[])
g_test_add_func ("/gravity/from-matrix", test_gravity_from_matrix);
g_test_add_func ("/gravity/for-script", test_gravity_for_script);
g_test_add_func ("/layout/fallback-shape", test_fallback_shape);
+#ifdef HAVE_CAIRO_FREETYPE
g_test_add_func ("/language/to-tag", test_language_to_tag);
+#endif
return g_test_run ();
}