libavfilter/vf_scale.c:275: error: Null Dereference
  pointer `desc` last assigned on line 265 could be null and is dereferenced at line 275, column 19.

libavfilter/vf_scale.c:260:1: start of procedure start_frame()
258. }
259. 
260. static int start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
     ^
261. {
262.     ScaleContext *scale = link->dst->priv;

libavfilter/vf_scale.c:262:5: 
260. static int start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
261. {
262.     ScaleContext *scale = link->dst->priv;
         ^
263.     AVFilterLink *outlink = link->dst->outputs[0];
264.     AVFilterBufferRef *outpicref, *for_next_filter;

libavfilter/vf_scale.c:263:5: 
261. {
262.     ScaleContext *scale = link->dst->priv;
263.     AVFilterLink *outlink = link->dst->outputs[0];
         ^
264.     AVFilterBufferRef *outpicref, *for_next_filter;
265.     const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format);

libavfilter/vf_scale.c:265:5: 
263.     AVFilterLink *outlink = link->dst->outputs[0];
264.     AVFilterBufferRef *outpicref, *for_next_filter;
265.     const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format);
         ^
266.     int ret = 0;
267. 

libavutil/pixdesc.c:1199:1: start of procedure av_pix_fmt_desc_get()
  1197. }
  1198. 
  1199. const AVPixFmtDescriptor *av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)
        ^
  1200. {
  1201.     if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB)

libavutil/pixdesc.c:1201:9: Taking false branch
  1199. const AVPixFmtDescriptor *av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)
  1200. {
  1201.     if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB)
                ^
  1202.         return NULL;
  1203.     return &av_pix_fmt_descriptors[pix_fmt];

libavutil/pixdesc.c:1201:24: Taking true branch
  1199. const AVPixFmtDescriptor *av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)
  1200. {
  1201.     if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB)
                               ^
  1202.         return NULL;
  1203.     return &av_pix_fmt_descriptors[pix_fmt];

libavutil/pixdesc.c:1202:9: 
  1200. {
  1201.     if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB)
  1202.         return NULL;
                ^
  1203.     return &av_pix_fmt_descriptors[pix_fmt];
  1204. }

libavutil/pixdesc.c:1204:1: return from a call to av_pix_fmt_desc_get
  1202.         return NULL;
  1203.     return &av_pix_fmt_descriptors[pix_fmt];
  1204. }
        ^
  1205. 
  1206. const AVPixFmtDescriptor *av_pix_fmt_desc_next(const AVPixFmtDescriptor *prev)

libavfilter/vf_scale.c:266:5: 
264.     AVFilterBufferRef *outpicref, *for_next_filter;
265.     const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format);
266.     int ret = 0;
         ^
267. 
268.     if (!scale->sws) {

libavfilter/vf_scale.c:268:10: Taking false branch
266.     int ret = 0;
267. 
268.     if (!scale->sws) {
              ^
269.         outpicref = avfilter_ref_buffer(picref, ~0);
270.         if (!outpicref)

libavfilter/vf_scale.c:275:5: 
273.     }
274. 
275.     scale->hsub = desc->log2_chroma_w;
         ^
276.     scale->vsub = desc->log2_chroma_h;
277. 

static int start_frame(AVFilterLink *link, AVFilterBufferRef *picref)
{
    ScaleContext *scale = link->dst->priv;
    AVFilterLink *outlink = link->dst->outputs[0];
    AVFilterBufferRef *outpicref, *for_next_filter;
    const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format);
    int ret = 0;
    if (!scale->sws) {
        outpicref = avfilter_ref_buffer(picref, ~0);
        if (!outpicref)
            return AVERROR(ENOMEM);
        return ff_start_frame(outlink, outpicref);
    }
    scale->hsub = desc->log2_chroma_w;
    scale->vsub = desc->log2_chroma_h;
    outpicref = ff_get_video_buffer(outlink, AV_PERM_WRITE, outlink->w, outlink->h);
    if (!outpicref)
        return AVERROR(ENOMEM);
    avfilter_copy_buffer_ref_props(outpicref, picref);
    outpicref->video->w = outlink->w;
    outpicref->video->h = outlink->h;
    av_reduce(&outpicref->video->pixel_aspect.num, &outpicref->video->pixel_aspect.den,
              (int64_t)picref->video->pixel_aspect.num * outlink->h * link->w,
              (int64_t)picref->video->pixel_aspect.den * outlink->w * link->h,
              INT_MAX);
    scale->slice_y = 0;
    for_next_filter = avfilter_ref_buffer(outpicref, ~0);
    if (for_next_filter)
        ret = ff_start_frame(outlink, for_next_filter);
    else
        ret = AVERROR(ENOMEM);
    if (ret < 0) {
        avfilter_unref_bufferp(&outpicref);
        return ret;
    }
    outlink->out_buf = outpicref;
    return 0;
}
['static int start_frame(AVFilterLink *link, AVFilterBufferRef *picref)\n{\n    ScaleContext *scale = link->dst->priv;\n    AVFilterLink *outlink = link->dst->outputs[0];\n    AVFilterBufferRef *outpicref, *for_next_filter;\n    const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(link->format);\n    int ret = 0;\n    if (!scale->sws) {\n        outpicref = avfilter_ref_buffer(picref, ~0);\n        if (!outpicref)\n            return AVERROR(ENOMEM);\n        return ff_start_frame(outlink, outpicref);\n    }\n    scale->hsub = desc->log2_chroma_w;\n    scale->vsub = desc->log2_chroma_h;\n    outpicref = ff_get_video_buffer(outlink, AV_PERM_WRITE, outlink->w, outlink->h);\n    if (!outpicref)\n        return AVERROR(ENOMEM);\n    avfilter_copy_buffer_ref_props(outpicref, picref);\n    outpicref->video->w = outlink->w;\n    outpicref->video->h = outlink->h;\n    av_reduce(&outpicref->video->pixel_aspect.num, &outpicref->video->pixel_aspect.den,\n              (int64_t)picref->video->pixel_aspect.num * outlink->h * link->w,\n              (int64_t)picref->video->pixel_aspect.den * outlink->w * link->h,\n              INT_MAX);\n    scale->slice_y = 0;\n    for_next_filter = avfilter_ref_buffer(outpicref, ~0);\n    if (for_next_filter)\n        ret = ff_start_frame(outlink, for_next_filter);\n    else\n        ret = AVERROR(ENOMEM);\n    if (ret < 0) {\n        avfilter_unref_bufferp(&outpicref);\n        return ret;\n    }\n    outlink->out_buf = outpicref;\n    return 0;\n}', 'const AVPixFmtDescriptor *av_pix_fmt_desc_get(enum AVPixelFormat pix_fmt)\n{\n    if (pix_fmt < 0 || pix_fmt >= AV_PIX_FMT_NB)\n        return NULL;\n    return &av_pix_fmt_descriptors[pix_fmt];\n}']