Fix for using -d with non-english locale
This commit is contained in:
parent
7873bfe211
commit
5c9283fc68
|
@ -956,11 +956,37 @@ main (int argc, char *argv[])
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
char hexchat_lang[13]; /* LC_ALL= plus 5 chars of hex_gui_lang and trailing \0 */
|
char hexchat_lang[13]; /* LC_ALL= plus 5 chars of hex_gui_lang and trailing \0 */
|
||||||
|
int i;
|
||||||
HANDLE mutex;
|
HANDLE mutex;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
srand (time (0)); /* CL: do this only once! */
|
srand (time (0)); /* CL: do this only once! */
|
||||||
|
|
||||||
|
/* We must check for the config dir parameter, otherwise load_config() will behave incorrectly.
|
||||||
|
* load_config() must come before fe_args() because fe_args() calls gtk_init() which needs to
|
||||||
|
* know the language which is set in the config. The code below is copy-pasted from fe_args()
|
||||||
|
* for the most part. */
|
||||||
|
if (argc >= 3)
|
||||||
|
{
|
||||||
|
for (i = 1; i < argc - 1; i++)
|
||||||
|
{
|
||||||
|
if (strcmp (argv[i], "-d") == 0)
|
||||||
|
{
|
||||||
|
if (xdir)
|
||||||
|
{
|
||||||
|
g_free (xdir);
|
||||||
|
}
|
||||||
|
|
||||||
|
xdir = strdup (argv[i + 1]);
|
||||||
|
|
||||||
|
if (xdir[strlen (xdir) - 1] == G_DIR_SEPARATOR)
|
||||||
|
{
|
||||||
|
xdir[strlen (xdir) - 1] = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
load_config ();
|
load_config ();
|
||||||
|
|
||||||
#ifdef WIN32
|
#ifdef WIN32
|
||||||
|
|
Loading…
Reference in New Issue