From 163fce2d4e4068640b43e447a6d236e2e2a9f3d2 Mon Sep 17 00:00:00 2001 From: Lutz Mueller Date: Tue, 29 Apr 2003 06:57:31 +0200 Subject: [PATCH] 2003-04-29 Lutz Mueller * libexif/exif-entry.c: Another attempt to fix EXIF_TAG_COPYRIGHT. --- ChangeLog | 4 ++++ libexif/exif-entry.c | 10 +++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 99827df..709aa48 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2003-04-29 Lutz Mueller + + * libexif/exif-entry.c: Another attempt to fix EXIF_TAG_COPYRIGHT. + 2003-04-28 Lutz Mueller Bug discovered by Jay Love diff --git a/libexif/exif-entry.c b/libexif/exif-entry.c index cd9e9da..4bb3ea9 100644 --- a/libexif/exif-entry.c +++ b/libexif/exif-entry.c @@ -193,14 +193,14 @@ exif_entry_get_value (ExifEntry *e) case EXIF_TAG_COPYRIGHT: CF (e->format, EXIF_FORMAT_ASCII, v); if (e->size && e->data) - strncpy (v, e->data, sizeof (v)); + strncpy (v, e->data, MIN (sizeof (v) - 1, e->size)); else - strncpy (v, "[None]", sizeof (v)); - strncat (v, " (Photographer) - ", sizeof (v)); + strncpy (v, "[None]", sizeof (v) - 1); + strncat (v, " (Photographer) - ", sizeof (v) - 1); if (e->size && e->data && - strlen ((char *) e->data + strlen ((char *) e->data) + 1)) + (strlen ((char *) e->data) + 1 < e->size)) strncat (v, e->data + strlen (e->data) + 1, - sizeof (v)); + sizeof (v) - 1); else strncat (v, "[None]", sizeof (v)); strncat (v, " (Editor)", sizeof (v)); -- 2.7.4