2002-11-22 Werner Koch <wk@gnupg.org>
* engine-gpgsm.c (_gpgme_gpgsm_new): Save the result of a first setlocale before doing another setlocale.
This commit is contained in:
parent
ec6525d311
commit
bc06e0cb8e
@ -2,6 +2,11 @@
|
||||
|
||||
* gpgme.h [_MSC_VER]: Define ssize_t as long.
|
||||
|
||||
2002-11-22 Werner Koch <wk@gnupg.org>
|
||||
|
||||
* engine-gpgsm.c (_gpgme_gpgsm_new): Save the result of a first
|
||||
setlocale before doing another setlocale.
|
||||
|
||||
2002-11-21 Marcus Brinkmann <marcus@g10code.de>
|
||||
|
||||
* decrypt.c: Some beautyfication.
|
||||
|
@ -464,7 +464,17 @@ gpgsm_new (void **engine)
|
||||
goto leave;
|
||||
}
|
||||
}
|
||||
|
||||
old_lc = setlocale (LC_CTYPE, NULL);
|
||||
if (old_lc)
|
||||
{
|
||||
old_lc = strdup (old_lc);
|
||||
if (!old_lc)
|
||||
{
|
||||
err = GPGME_Out_Of_Core;
|
||||
goto leave;
|
||||
}
|
||||
}
|
||||
dft_lc = setlocale (LC_CTYPE, "");
|
||||
if (dft_lc)
|
||||
{
|
||||
@ -472,19 +482,32 @@ gpgsm_new (void **engine)
|
||||
err = mk_error (Out_Of_Core);
|
||||
else
|
||||
{
|
||||
err = assuan_transact (gpgsm->assuan_ctx, optstr, NULL, NULL, NULL, NULL, NULL,
|
||||
NULL);
|
||||
err = assuan_transact (gpgsm->assuan_ctx, optstr, NULL, NULL,
|
||||
NULL, NULL, NULL, NULL);
|
||||
free (optstr);
|
||||
if (err)
|
||||
err = map_assuan_error (err);
|
||||
}
|
||||
}
|
||||
if (old_lc)
|
||||
{
|
||||
setlocale (LC_CTYPE, old_lc);
|
||||
free (old_lc);
|
||||
}
|
||||
if (err)
|
||||
goto leave;
|
||||
|
||||
|
||||
old_lc = setlocale (LC_MESSAGES, NULL);
|
||||
if (old_lc)
|
||||
{
|
||||
old_lc = strdup (old_lc);
|
||||
if (!old_lc)
|
||||
{
|
||||
err = GPGME_Out_Of_Core;
|
||||
goto leave;
|
||||
}
|
||||
}
|
||||
dft_lc = setlocale (LC_MESSAGES, "");
|
||||
if (dft_lc)
|
||||
{
|
||||
@ -500,7 +523,10 @@ gpgsm_new (void **engine)
|
||||
}
|
||||
}
|
||||
if (old_lc)
|
||||
{
|
||||
setlocale (LC_MESSAGES, old_lc);
|
||||
free (old_lc);
|
||||
}
|
||||
if (err)
|
||||
goto leave;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user