summaryrefslogtreecommitdiffstats
path: root/g10/gpg.c
diff options
context:
space:
mode:
Diffstat (limited to 'g10/gpg.c')
-rw-r--r--g10/gpg.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/g10/gpg.c b/g10/gpg.c
index adb4c3682..a568bb97e 100644
--- a/g10/gpg.c
+++ b/g10/gpg.c
@@ -300,6 +300,7 @@ enum cmd_and_opt_values
oNoAllowFreeformUID,
oAllowSecretKeyImport,
oEnableSpecialFilenames,
+ oEnableW32HandleTranslation,
oNoLiteral,
oSetFilesize,
oHonorHttpProxy,
@@ -664,6 +665,7 @@ static ARGPARSE_OPTS opts[] = {
{ oAllowSecretKeyImport, "allow-secret-key-import", 0, "@" },
{ oTryAllSecrets, "try-all-secrets", 0, "@" },
{ oEnableSpecialFilenames, "enable-special-filenames", 0, "@" },
+ { oEnableW32HandleTranslation, "enable-w32-handle-translation", 0, "@" },
{ oNoExpensiveTrustChecks, "no-expensive-trust-checks", 0, "@" },
{ aDeleteSecretAndPublicKeys, "delete-secret-and-public-keys",256, "@" },
{ aRebuildKeydbCaches, "rebuild-keydb-caches", 256, "@"},
@@ -1876,6 +1878,7 @@ main (int argc, char **argv)
int eyes_only=0;
int multifile=0;
int pwfd = -1;
+ int w32_handle_translation = 0;
int with_fpr = 0; /* make an option out of --fingerprint */
int any_explicit_recipient = 0;
int require_secmem=0,got_secmem=0;
@@ -1991,6 +1994,15 @@ main (int argc, char **argv)
{
/* Not used */
}
+ else if (pargs.r_opt == oEnableW32HandleTranslation )
+ {
+ /* We must initialize handle translation before parsing
+ the options. */
+ if (! w32_handle_translation)
+ translate_table_init ();
+ w32_handle_translation = 1;
+ break;
+ }
}
#ifdef HAVE_DOSISH_SYSTEM
@@ -2769,6 +2781,7 @@ main (int argc, char **argv)
case oEnableSpecialFilenames:
iobuf_enable_special_filenames (1);
break;
+ case oEnableW32HandleTranslation: break;
case oNoExpensiveTrustChecks: opt.no_expensive_trust_checks=1; break;
case oAutoCheckTrustDB: opt.no_auto_check_trustdb=0; break;
case oNoAutoCheckTrustDB: opt.no_auto_check_trustdb=1; break;
@@ -3333,6 +3346,7 @@ main (int argc, char **argv)
if( pwfd != -1 ) /* Read the passphrase now. */
read_passphrase_from_fd( pwfd );
+
fname = argc? *argv : NULL;
if(fname && utf8_strings)