Fix hb_buffer_guess_segment_properties() for empty buffer

Was causing assertion failure in shape_plan().
diff --git a/src/hb-buffer.cc b/src/hb-buffer.cc
index 0f5a97f..0a5600b 100644
--- a/src/hb-buffer.cc
+++ b/src/hb-buffer.cc
@@ -493,8 +493,8 @@
 void
 hb_buffer_t::guess_segment_properties (void)
 {
-  if (unlikely (!len)) return;
-  assert (content_type == HB_BUFFER_CONTENT_TYPE_UNICODE);
+  assert (content_type == HB_BUFFER_CONTENT_TYPE_UNICODE ||
+	  (!len && content_type == HB_BUFFER_CONTENT_TYPE_INVALID));
 
   /* If script is set to INVALID, guess from buffer contents */
   if (props.script == HB_SCRIPT_INVALID) {