From e20815b3967bb00d26b9a0f80724e998b47e4f5a Mon Sep 17 00:00:00 2001
From: Milan Cutka <cutka@szm.sk>
Date: Fri, 12 Nov 2004 09:48:06 +0000
Subject: [PATCH] When bswap_32 is a macro, png images fail to decode properly,
 patch by (Milan Cutka <cutka>at<szm>dot<sk>)

Originally committed as revision 3672 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavcodec/png.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libavcodec/png.c b/libavcodec/png.c
index 079795ab9da..11faa866aef 100644
--- a/libavcodec/png.c
+++ b/libavcodec/png.c
@@ -501,12 +501,14 @@ static int decode_frame(AVCodecContext *avctx,
     if (ret != Z_OK)
         return -1;
     for(;;) {
+        int tag32;
         if (s->bytestream >= s->bytestream_end)
             goto fail;
         length = get32(&s->bytestream);
         if (length > 0x7fffffff)
             goto fail;
-        tag = bswap_32(get32(&s->bytestream));
+        tag32 = get32(&s->bytestream);
+        tag = bswap_32(tag32);
 #ifdef DEBUG
         printf("png: tag=%c%c%c%c length=%u\n", 
                (tag & 0xff),
-- 
GitLab