path: validate configured character set

This commit is contained in:
Max Kellermann 2009-02-20 12:31:00 +01:00
parent adea76a6ed
commit 09ecfb6567

View File

@ -21,6 +21,7 @@
#include <glib.h>
#include <assert.h>
#include <string.h>
#undef G_LOG_DOMAIN
@ -53,6 +54,16 @@ utf8_to_fs_charset(const char *path_utf8)
void path_set_fs_charset(const char *charset)
{
char *test;
assert(charset != NULL);
/* convert a space to ensure that the charset is valid */
test = g_convert(" ", 1, charset, "UTF-8", NULL, NULL, NULL);
if (test == NULL)
g_error("invalid filesystem charset: %s", charset);
g_free(test);
g_free(fs_charset);
fs_charset = g_strdup(charset);