diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c
index ae55a3328422f069b075d502255b1fc6cbb5ce92..7dd9cdddafad8ae78c801630a7866393199230d6 100644
--- a/libavformat/rtmpproto.c
+++ b/libavformat/rtmpproto.c
@@ -2507,7 +2507,7 @@ static int get_packet(URLContext *s, int for_header)
         } else if (rpkt.type == RTMP_PT_METADATA) {
             ret = handle_metadata(rt, &rpkt);
             ff_rtmp_packet_destroy(&rpkt);
-            return 0;
+            return ret;
         }
         ff_rtmp_packet_destroy(&rpkt);
     }