From 07ba5f6c9ee5059b525e3cfa9bd1a95f048380ce Mon Sep 17 00:00:00 2001 From: Marcus Boerger Date: Fri, 30 May 2003 17:46:57 +0000 Subject: [PATCH] Fix handling of ini settings --- ext/exif/exif.c | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/ext/exif/exif.c b/ext/exif/exif.c index 13957bb304..c035f3685d 100644 --- a/ext/exif/exif.c +++ b/ext/exif/exif.c @@ -3669,6 +3669,16 @@ static int exif_discard_imageinfo(image_info_type *ImageInfo) } /* }}} */ +/* {{{ estrdupx */ +static inline char * estrdupx(const char* str) +{ + if (str) { + return estrdup(str); + } + return estrdup(""); +} +/* }}} */ + /* {{{ exif_read_file */ static int exif_read_file(image_info_type *ImageInfo, char *FileName, int read_thumbnail, int read_all TSRMLS_DC) @@ -3692,12 +3702,12 @@ static int exif_read_file(image_info_type *ImageInfo, char *FileName, int read_t ImageInfo->read_all = read_all; ImageInfo->Thumbnail.filetype = IMAGE_FILETYPE_UNKNOWN; - ImageInfo->encode_unicode = estrdup(EXIF_G(encode_unicode)); - ImageInfo->decode_unicode_be = estrdup(EXIF_G(decode_unicode_be)); - ImageInfo->decode_unicode_le = estrdup(EXIF_G(decode_unicode_le)); - ImageInfo->encode_jis = estrdup(EXIF_G(encode_jis)); - ImageInfo->decode_jis_be = estrdup(EXIF_G(decode_jis_be)); - ImageInfo->decode_jis_le = estrdup(EXIF_G(decode_jis_le)); + ImageInfo->encode_unicode = estrdupx(EXIF_G(encode_unicode)); + ImageInfo->decode_unicode_be = estrdupx(EXIF_G(decode_unicode_be)); + ImageInfo->decode_unicode_le = estrdupx(EXIF_G(decode_unicode_le)); + ImageInfo->encode_jis = estrdupx(EXIF_G(encode_jis)); + ImageInfo->decode_jis_be = estrdupx(EXIF_G(decode_jis_be)); + ImageInfo->decode_jis_le = estrdupx(EXIF_G(decode_jis_le)); if (php_stream_is(ImageInfo->infile, PHP_STREAM_IS_STDIO)) { if (VCWD_STAT(FileName, &st) >= 0) { -- 2.50.1