diff --git a/libavcodec/h264.c b/libavcodec/h264.c
index c65284760039dda81e43058ba20cfdda3ff0c491..c3f600f2a652a177c9a252439bd42d4e4f6511d8 100644
--- a/libavcodec/h264.c
+++ b/libavcodec/h264.c
@@ -1001,7 +1001,7 @@ static av_cold void common_init(H264Context *h)
     memset(h->pps.scaling_matrix8, 16, 2 * 64 * sizeof(uint8_t));
 }
 
-static int ff_h264_decode_extradata_internal(H264Context *h, const uint8_t *buf, int size)
+int ff_h264_decode_extradata(H264Context *h, const uint8_t *buf, int size)
 {
     AVCodecContext *avctx = h->s.avctx;
 
@@ -1058,15 +1058,6 @@ static int ff_h264_decode_extradata_internal(H264Context *h, const uint8_t *buf,
     return size;
 }
 
-int ff_h264_decode_extradata(H264Context *h, const uint8_t *buf, int size)
-{
-    int ret;
-    h->decoding_extradata = 1;
-    ret = ff_h264_decode_extradata_internal(h, buf, size);
-    h->decoding_extradata = 0;
-    return ret;
-}
-
 av_cold int ff_h264_decode_init(AVCodecContext *avctx)
 {
     H264Context *h = avctx->priv_data;
diff --git a/libavcodec/h264.h b/libavcodec/h264.h
index 2be4809a16e853f4b582e74c7b672af572b8aa9c..af0c1e56b81689264921d2a3697a7bf0782a26d4 100644
--- a/libavcodec/h264.h
+++ b/libavcodec/h264.h
@@ -444,7 +444,6 @@ typedef struct H264Context {
     int nal_unit_type;
     uint8_t *rbsp_buffer[2];
     unsigned int rbsp_buffer_size[2];
-    int decoding_extradata;
 
     /**
      * Used to parse AVC variant of h264