[buffer] Fix serializing of buffer with invalid direction
authorBehdad Esfahbod <behdad@behdad.org>
Wed, 27 Feb 2013 21:09:55 +0000 (16:09 -0500)
committerBehdad Esfahbod <behdad@behdad.org>
Wed, 27 Feb 2013 23:49:15 +0000 (18:49 -0500)
src/hb-buffer-serialize.cc

index d7c92c6..c1e2fce 100644 (file)
@@ -174,7 +174,7 @@ _hb_buffer_serialize_glyphs_text (hb_buffer_t *buffer,
        p += snprintf (p, ARRAY_LENGTH (b) - (p - b), "@%d,%d", pos[i].x_offset, pos[i].y_offset);
 
       *p++ = '+';
-      if (HB_DIRECTION_IS_HORIZONTAL (direction) || pos[i].x_advance)
+      if (!HB_DIRECTION_IS_VERTICAL (direction) || pos[i].x_advance)
        p += snprintf (p, ARRAY_LENGTH (b) - (p - b), "%d", pos[i].x_advance);
       if (HB_DIRECTION_IS_VERTICAL (direction) || pos->y_advance)
        p += snprintf (p, ARRAY_LENGTH (b) - (p - b), ",%d", pos[i].y_advance);