Move delimiter addition into hb-buffer-serialize
diff --git a/src/hb-buffer-serialize.cc b/src/hb-buffer-serialize.cc
index 99cd46f..3783da1 100644
--- a/src/hb-buffer-serialize.cc
+++ b/src/hb-buffer-serialize.cc
@@ -125,6 +125,8 @@
if (i)
*p++ = ',';
+ else
+ *p++ = '[';
*p++ = '{';
@@ -174,6 +176,8 @@
}
*p++ = '}';
+ if (i == end-1)
+ *p++ = ']';
unsigned int l = p - b;
if (buf_size > l)
@@ -213,9 +217,14 @@
char *p = b;
if (i)
*p++ = ',';
+ else
+ *p++ = '[';
p += hb_max (0, snprintf (p, ARRAY_LENGTH (b) - (p - b), "%u", info[i].codepoint));
+ if (i == end-1)
+ *p++ = ']';
+
unsigned int l = p - b;
if (buf_size > l)
{
@@ -257,6 +266,8 @@
if (i)
*p++ = '|';
+ else
+ *p++ = '[';
if (!(flags & HB_BUFFER_SERIALIZE_FLAG_NO_GLYPH_NAMES))
{
@@ -297,6 +308,10 @@
p += hb_max (0, snprintf (p, ARRAY_LENGTH (b) - (p - b), "<%d,%d,%d,%d>", extents.x_bearing, extents.y_bearing, extents.width, extents.height));
}
+ if (i == end-1) {
+ *p++ = ']';
+ }
+
unsigned int l = p - b;
if (buf_size > l)
{
@@ -336,8 +351,14 @@
if (i)
*p++ = '|';
+ else
+ *p++ = '<';
p += hb_max (0, snprintf (p, ARRAY_LENGTH (b) - (p - b), "U+%04X", info[i].codepoint));
+
+ if (i == end-1)
+ *p++ = '>';
+
unsigned int l = p - b;
if (buf_size > l)
{
@@ -487,7 +508,7 @@
* The serialized codepoints will look something like:
*
* ```
- * U+0651|U+0628
+ * <U+0651|U+0628>
* ```
* - Glyphs are separated with `|`
* - Unicode codepoints are expressed as zero-padded four (or more)
diff --git a/util/options.cc b/util/options.cc
index 653e201..caf8233 100644
--- a/util/options.cc
+++ b/util/options.cc
@@ -916,10 +916,6 @@
hb_buffer_serialize_flags_t flags,
GString *gs)
{
- if (hb_buffer_get_content_type(buffer) == HB_BUFFER_CONTENT_TYPE_UNICODE)
- g_string_append_c (gs, '<');
- else
- g_string_append_c (gs, '[');
unsigned int num_glyphs = hb_buffer_get_length (buffer);
unsigned int start = 0;
@@ -934,10 +930,6 @@
break;
g_string_append (gs, buf);
}
- if (hb_buffer_get_content_type(buffer) == HB_BUFFER_CONTENT_TYPE_UNICODE)
- g_string_append_c (gs, '>');
- else
- g_string_append_c (gs, ']');
}
void