From 4a0fb276a911d5a2760818af2901c75673df5a93 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 13 Nov 2013 14:24:42 +0100 Subject: [PATCH] i18n: Fix null pointer dereference when locale info is missing. * libguile/i18n.c (scm_nl_langinfo): Check whether C_RESULT is NULL before calling 'strdup'. --- libguile/i18n.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libguile/i18n.c b/libguile/i18n.c index dc6d07d12..0f607f331 100644 --- a/libguile/i18n.c +++ b/libguile/i18n.c @@ -1535,7 +1535,9 @@ SCM_DEFINE (scm_nl_langinfo, "nl-langinfo", 1, 1, 0, codeset = nl_langinfo (CODESET); } - c_result = strdup (c_result); + if (c_result != NULL) + c_result = strdup (c_result); + unlock_locale_mutex (); if (c_result == NULL)