summaryrefslogtreecommitdiff
path: root/common/test-message.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/test-message.c')
-rw-r--r--common/test-message.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/common/test-message.c b/common/test-message.c
index 7dd5426..339ad4b 100644
--- a/common/test-message.c
+++ b/common/test-message.c
@@ -38,15 +38,26 @@
#include "message.h"
#include <errno.h>
+#ifdef HAVE_LOCALE_H
+#include <locale.h>
+#endif
#include <stdlib.h>
#include <stdio.h>
+#ifdef HAVE_LOCALE_H
+extern locale_t p11_message_locale;
+#endif
+
static void
test_with_err (void)
{
const char *last;
char *expected;
+#ifdef HAVE_NEWLOCALE
+ p11_message_locale = newlocale (LC_ALL_MASK, "POSIX", (locale_t) 0);
+#endif
+
errno = E2BIG;
p11_message_err (ENOENT, "Details: %s", "value");
last = p11_message_last ();
@@ -55,6 +66,10 @@ test_with_err (void)
assert_not_reached ();
assert_str_eq (expected, last);
free (expected);
+
+#ifdef HAVE_NEWLOCALE
+ freelocale (p11_message_locale);
+#endif
}
int