diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2012-04-14 00:58:59 +0400 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2012-04-14 00:58:59 +0400 |
commit | 889dc208bfe4a6ea39e9018da0da520478d1d12c (patch) | |
tree | 6b30459263f86847ddc9c8dcfbc15841599c9cb6 | |
parent | 134bf10e4d3bc3ab629c38c618fed467aa817891 (diff) |
Grmph, BLF_(p)gettext were not protected against NULL message/context, was causing a sigsev with latest own commits (in File menu)!
-rw-r--r-- | source/blender/blenfont/intern/blf_translation.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source/blender/blenfont/intern/blf_translation.c b/source/blender/blenfont/intern/blf_translation.c index 5d74a844425..12fa15afa3c 100644 --- a/source/blender/blenfont/intern/blf_translation.c +++ b/source/blender/blenfont/intern/blf_translation.c @@ -93,7 +93,7 @@ void BLF_free_unifont(void) const char* BLF_gettext(const char *msgid) { #ifdef WITH_INTERNATIONAL - if (msgid[0]) + if (msgid && msgid[0]) return gettext(msgid); return ""; #else @@ -111,6 +111,9 @@ const char *BLF_pgettext(const char *context, const char *message) size_t overall_length = strlen(context) + strlen(message) + sizeof(GETTEXT_CONTEXT_GLUE) + 1; + if (!message || !context || !message[0]) + return ""; + if (overall_length > sizeof(static_msg_ctxt_id)) { dynamic_msg_ctxt_id = malloc(overall_length); msg_ctxt_id = dynamic_msg_ctxt_id; |