```C++
WEBVTT_INTERN webvtt_status
webvtt_create_node( webvtt_node **node, webvtt_node_kind kind, webvtt_node *parent )
{
  webvtt_node *temp_node = (webvtt_node *)webvtt_alloc0(sizeof(*temp_node));
  
  if( !temp_node )
  { 
    return WEBVTT_OUT_OF_MEMORY; 
  }

  webvtt_ref_node( temp_node );
  temp_node->kind = kind;
  temp_node->parent = parent;
  *node = temp_node;

  return WEBVTT_SUCCESS;
}
```
I see, I swear when I was looking at this a moment ago, there was no mention of webvtt_ref_node.

Why is create_node in cue.c rather than cuetext.c now? o_O maybe it should be, I don't know