Merge commit '6d96c7ea89600655b1f18a3b12f3f041fa714152'
authorMichael Niedermayer <michaelni@gmx.at>
Sat, 18 Oct 2014 19:46:28 +0000 (21:46 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sat, 18 Oct 2014 19:50:34 +0000 (21:50 +0200)
* commit '6d96c7ea89600655b1f18a3b12f3f041fa714152':
  vf_showinfo: Forward the av_image_get_linesize error

Conflicts:
libavfilter/vf_showinfo.c

See: 2aecfd4f209688a8365f18b351f0ecf12fe5f873
Merged-by: Michael Niedermayer <michaelni@gmx.at>
1  2 
libavfilter/vf_showinfo.c

index 8201c2d44afcdd8d6c9b83921c4ba699cfed92e9,ede1765d1e601823f0d3f18646d823538118379d..aa3bc8309021df072afae2091b8d9f8162f9c8fc
@@@ -79,17 -72,15 +79,17 @@@ static void update_sample_stats(const u
  static int filter_frame(AVFilterLink *inlink, AVFrame *frame)
  {
      AVFilterContext *ctx = inlink->dst;
 -    ShowInfoContext *showinfo = ctx->priv;
      const AVPixFmtDescriptor *desc = av_pix_fmt_desc_get(inlink->format);
      uint32_t plane_checksum[4] = {0}, checksum = 0;
 +    int64_t sum[4] = {0}, sum2[4] = {0};
 +    int32_t pixelcount[4] = {0};
      int i, plane, vsub = desc->log2_chroma_h;
  
 -    for (plane = 0; frame->data[plane] && plane < 4; plane++) {
 +    for (plane = 0; plane < 4 && frame->data[plane] && frame->linesize[plane]; plane++) {
-         int64_t linesize = av_image_get_linesize(frame->format, frame->width, plane);
          uint8_t *data = frame->data[plane];
 -        int h = plane == 1 || plane == 2 ? inlink->h >> vsub : inlink->h;
 +        int h = plane == 1 || plane == 2 ? FF_CEIL_RSHIFT(inlink->h, vsub) : inlink->h;
+         int linesize = av_image_get_linesize(frame->format, frame->width, plane);
 +
          if (linesize < 0)
              return linesize;