diff --git a/lib/media.c b/lib/media.c
index 9088369eb632568a4b37b898fa0d0139f0e88575..0f7c61af6db12a161dc9975ee0dd07402e50ff38 100644
--- a/lib/media.c
+++ b/lib/media.c
@@ -481,6 +481,7 @@ libvlc_media_t * libvlc_media_new_as_node( libvlc_instance_t *p_instance,
     }
 
     p_md = libvlc_media_new_from_input_item( p_instance, p_input_item );
+    input_item_Release( p_input_item );
 
     p_subitems = media_get_subitems( p_md, true );
     if( p_subitems == NULL) {