aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2007-04-05 00:09:48 +0000
committerMichael Niedermayer <michaelni@gmx.at>2007-04-05 00:09:48 +0000
commit0a7a33d239e38b53aca41b23f72a77b67a00e2df (patch)
tree0881f8baee20737be81404b5b3af70326d9add15
parentbfd9a00fff21fd4bc122ab68363af66e623d2c44 (diff)
downloadffmpeg-0a7a33d239e38b53aca41b23f72a77b67a00e2df.tar.gz
remove compound literals gcc 2.95 doesnt support taking an address of a compound literal
and the current code was my fault as i suggested the student to use compound literals beliving gcc 2.95 supports them completely ... Originally committed as revision 8629 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavcodec/tiffenc.c23
1 files changed, 15 insertions, 8 deletions
diff --git a/libavcodec/tiffenc.c b/libavcodec/tiffenc.c
index 20c9bee33c..1df715824e 100644
--- a/libavcodec/tiffenc.c
+++ b/libavcodec/tiffenc.c
@@ -127,6 +127,13 @@ static void add_entry(TiffEncoderContext * s,
s->num_entries++;
}
+static void add_entry1(TiffEncoderContext * s,
+ enum TiffTags tag, enum TiffTypes type, int val){
+ uint16_t w = val;
+ uint32_t dw= val;
+ add_entry(s, tag, type, 1, type == TIFF_SHORT ? &w : &dw);
+}
+
/**
* Encode one strip in tiff file
*
@@ -297,25 +304,25 @@ static int encode_frame(AVCodecContext * avctx, unsigned char *buf,
s->num_entries = 0;
- add_entry(s, TIFF_SUBFILE, TIFF_LONG, 1, (uint32_t[]) {0});
- add_entry(s, TIFF_WIDTH, TIFF_LONG, 1, (uint32_t[]) {s->width});
- add_entry(s, TIFF_HEIGHT, TIFF_LONG, 1, (uint32_t[]) {s->height});
+ add_entry1(s,TIFF_SUBFILE, TIFF_LONG, 0);
+ add_entry1(s,TIFF_WIDTH, TIFF_LONG, s->width);
+ add_entry1(s,TIFF_HEIGHT, TIFF_LONG, s->height);
if (s->bpp_tab_size)
add_entry(s, TIFF_BPP, TIFF_SHORT, s->bpp_tab_size, bpp_tab);
- add_entry(s, TIFF_COMPR, TIFF_SHORT, 1, (uint16_t[]) {s->compr});
- add_entry(s, TIFF_INVERT, TIFF_SHORT, 1, (uint16_t[]) {s->invert});
+ add_entry1(s,TIFF_COMPR, TIFF_SHORT, s->compr);
+ add_entry1(s,TIFF_INVERT, TIFF_SHORT, s->invert);
add_entry(s, TIFF_STRIP_OFFS, TIFF_LONG, strips, strip_offsets);
if (s->bpp_tab_size)
- add_entry(s, TIFF_SAMPLES_PER_PIXEL, TIFF_SHORT, 1, (uint16_t[]) {s->bpp_tab_size});
+ add_entry1(s,TIFF_SAMPLES_PER_PIXEL, TIFF_SHORT, s->bpp_tab_size);
- add_entry(s, TIFF_ROWSPERSTRIP, TIFF_LONG, 1, (uint32_t[]) {s->rps});
+ add_entry1(s,TIFF_ROWSPERSTRIP, TIFF_LONG, s->rps);
add_entry(s, TIFF_STRIP_SIZE, TIFF_LONG, strips, strip_sizes);
add_entry(s, TIFF_XRES, TIFF_RATIONAL, 1, res);
add_entry(s, TIFF_YRES, TIFF_RATIONAL, 1, res);
- add_entry(s, TIFF_RES_UNIT, TIFF_SHORT, 1, (uint16_t[]) {2});
+ add_entry1(s,TIFF_RES_UNIT, TIFF_SHORT, 2);
add_entry(s, TIFF_SOFTWARE_NAME, TIFF_STRING,
strlen(LIBAVCODEC_IDENT) + 1, LIBAVCODEC_IDENT);