diff --git a/modules/services_discovery/avahi.c b/modules/services_discovery/avahi.c
index 4a22ccc18eeb7611e54b5a9d9dd6c028c8642b12..8c878e8d56f2706acb5f9069978579fc2c1b0ca2 100644
--- a/modules/services_discovery/avahi.c
+++ b/modules/services_discovery/avahi.c
@@ -176,7 +176,10 @@ static void add_renderer( const char *psz_protocol, const char *psz_name,
         model = get_string_list_value( txt, "md" );
 
         if( asprintf( &uri, "%s://%s:%u", psz_protocol, psz_addr, i_port ) < 0 )
+        {
+            uri = NULL;
             goto error;
+        }
 
         extra_uri = renderer_flags & VLC_RENDERER_CAN_VIDEO ? NULL : "no-video";
         demux = "cc_demux";