8c255fb185d5651b57380b0a9443001e8051b29d moved some code out of switch
but did not declare ''buffer''. Also, replacing the
"break" with
"goto bail" neglected the WIN32 specific code.
---
src/fcxml.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/src/fcxml.c b/src/fcxml.c
index 5201b3c..be1a555 100644
--- a/src/fcxml.c
+++ b/src/fcxml.c
@@ -1850,6 +1850,9 @@ FcParseDir (FcConfigParse *parse)
{
const FcChar8 *attr, *data;
FcChar8 *prefix = NULL;
+#ifdef _WIN32
+ FcChar8 buffer[1000];
+#endif
attr = FcConfigGetAttribute (parse, "prefix");
if (attr && FcStrCmp (attr, (const FcChar8 *)"xdg") == 0)
@@ -1886,7 +1889,7 @@ FcParseDir (FcConfigParse *parse)
if (!GetModuleFileName (NULL, buffer, sizeof (buffer) - 20))
{
FcConfigMessage (parse, FcSevereError, "GetModuleFileName
failed");
- break;
+ goto bail;
}
/*
* Must use the multi-byte aware function to search
@@ -1905,7 +1908,7 @@ FcParseDir (FcConfigParse *parse)
if (!GetModuleFileName (NULL, buffer, sizeof (buffer) - 20))
{
FcConfigMessage (parse, FcSevereError, "GetModuleFileName
failed");
- break;
+ goto bail;
}
p = _mbsrchr (data, ''\\'');
if (p) *p = ''\0'';
@@ -1919,7 +1922,7 @@ FcParseDir (FcConfigParse *parse)
if (rc == 0 || rc > sizeof (buffer) - 20)
{
FcConfigMessage (parse, FcSevereError, "GetSystemWindowsDirectory
failed");
- break;
+ goto bail;
}
if (data [strlen (data) - 1] != ''\\'')
strcat (data, "\\");
--
1.7.10.3
--------------050808000902090608010104--