>The problem is if you set empty_node refcount to be 1 and then increase the ref count using webvtt_ref_node in the webvtt_init_node then you end up with a static node of refcount 2 on your first time.

That's not a problem, that's actually exactly what we want. this is a static node, which means the reference count should never drop down to 0, because dropping to zero means it should be deleted.