diff options
Diffstat (limited to 'widgets/table/e-table-specification.c')
-rw-r--r-- | widgets/table/e-table-specification.c | 17 |
1 files changed, 13 insertions, 4 deletions
diff --git a/widgets/table/e-table-specification.c b/widgets/table/e-table-specification.c index 3fcc28689d..31a58e5401 100644 --- a/widgets/table/e-table-specification.c +++ b/widgets/table/e-table-specification.c @@ -21,20 +21,21 @@ * 02111-1307, USA. */ -#ifdef HAVE_CONFIG_H #include <config.h> -#endif - -#include "e-table-specification.h" #include <stdlib.h> #include <string.h> +#include <glib.h> +#include <glib/gstdio.h> #include <libxml/parser.h> #include <libxml/xmlmemory.h> + #include "gal/util/e-util.h" #include "gal/util/e-xml-utils.h" +#include "e-table-specification.h" + static GObjectClass *etsp_parent_class; static void @@ -133,7 +134,15 @@ e_table_specification_load_from_file (ETableSpecification *specification, if (!g_file_test (filename, G_FILE_TEST_EXISTS)) return FALSE; +#ifdef G_OS_WIN32 + { + gchar *locale_filename = gnome_win32_locale_filename_from_utf8 (filename); + doc = xmlParseFile (locale_filename); + g_free (locale_filename); + } +#else doc = xmlParseFile (filename); +#endif if (doc) { xmlNode *node = xmlDocGetRootElement (doc); e_table_specification_load_from_node (specification, node); |