diff --git a/src/hb-buffer.c b/src/hb-buffer.c
index 93b51e5..1b5f2fb 100644
--- a/src/hb-buffer.c
+++ b/src/hb-buffer.c
@@ -31,7 +31,9 @@
 
 
 static hb_buffer_t _hb_buffer_nil = {
-  HB_REFERENCE_COUNT_INVALID /* ref_count */
+  HB_REFERENCE_COUNT_INVALID, /* ref_count */
+
+  &_hb_unicode_funcs_nil  /* unicode */
 };
 
 /* Here is how the buffer works internally:
@@ -84,6 +86,8 @@
   if (pre_alloc_size)
     hb_buffer_ensure(buffer, pre_alloc_size);
 
+  buffer->unicode = &_hb_unicode_funcs_nil;
+
   return buffer;
 }
 
@@ -104,12 +108,45 @@
 {
   HB_OBJECT_DO_DESTROY (buffer);
 
+  hb_unicode_funcs_destroy (buffer->unicode);
+
   free (buffer->in_string);
   free (buffer->positions);
 
   free (buffer);
 }
 
+
+void
+hb_buffer_set_unicode_funcs (hb_buffer_t        *buffer,
+			     hb_unicode_funcs_t *unicode)
+{
+  hb_unicode_funcs_reference (unicode);
+  hb_unicode_funcs_destroy (buffer->unicode);
+  buffer->unicode = unicode;
+}
+
+hb_unicode_funcs_t *
+hb_buffer_get_unicode_funcs (hb_buffer_t        *buffer)
+{
+  return buffer->unicode;
+}
+
+void
+hb_buffer_set_direction (hb_buffer_t    *buffer,
+			 hb_direction_t  direction)
+
+{
+  buffer->direction = direction;
+}
+
+hb_direction_t
+hb_buffer_get_direction (hb_buffer_t    *buffer)
+{
+  return buffer->direction;
+}
+
+
 void
 hb_buffer_clear (hb_buffer_t *buffer)
 {
@@ -171,14 +208,6 @@
   buffer->in_length++;
 }
 
-void
-hb_buffer_set_direction (hb_buffer_t    *buffer,
-			 hb_direction_t  direction)
-
-{
-  buffer->direction = direction;
-}
-
 
 /* HarfBuzz-Internal API */
 
