[serialize] Movce empty-object handling earlier
diff --git a/src/hb-serialize.hh b/src/hb-serialize.hh
index 9b7143e..6a2b6ff 100644
--- a/src/hb-serialize.hh
+++ b/src/hb-serialize.hh
@@ -172,6 +172,9 @@
     obj.tail = head;
     unsigned len = obj.tail - obj.head;
 
+    if (!len)
+      return 0;
+
     objidx_t objidx = packed_map.get (&obj);
     if (objidx)
     {
@@ -183,9 +186,6 @@
     memmove (tail, obj.head, len);
     head = obj.head;
 
-    if (!len)
-      return 0;
-
     obj.head = tail;
     obj.tail = tail + len;