not to do that.
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
- if (table[i].tag == t) return (_(table[i].description));
+ if (table[i].tag == t) {
+ if (!*table[i].description)
+ return "";
+ return (_(table[i].description));
+ }
return NULL;
}
for (j = 0; list[i].strings[j] && (j < v_short); j++);
if (!list[i].strings[j])
snprintf (val, maxlen, "%i", v_short);
+ else if (!*list[i].strings[j])
+ val[0] = 0;
else
strncpy (val, _(list[i].strings[j]), maxlen);
break;
if (ifd >= EXIF_IFD_COUNT) return NULL;
for (i = 0; ExifTagTable[i].description; i++)
- if ((ExifTagTable[i].tag == tag) && RECORDED) break;
- return _(ExifTagTable[i].description);
+ if ((ExifTagTable[i].tag == tag) && RECORDED) {
+ /* GNU gettext acts strangely when given an empty string */
+ if (!*ExifTagTable[i].description)
+ return "";
+ return _(ExifTagTable[i].description);
+ }
+ return NULL;
}
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
- if (table[i].tag == t) return (_(table[i].description));
+ if (table[i].tag == t) {
+ if (!*table[i].description)
+ return "";
+ return (_(table[i].description));
+ }
return NULL;
}
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
- if (table[i].tag == t) return (_(table[i].description));
+ if (table[i].tag == t) {
+ if (!*table[i].description)
+ return "";
+ return (_(table[i].description));
+ }
return NULL;
}
bindtextdomain (GETTEXT_PACKAGE, LOCALEDIR);
for (i = 0; i < sizeof (table) / sizeof (table[0]); i++)
- if (table[i].tag == t) return (_(table[i].description));
+ if (table[i].tag == t) {
+ if (!*table[i].description)
+ return "";
+ return (_(table[i].description));
+ }
return NULL;
}