1
0
Fork 0
mirror of git://git.gnupg.org/gnupg.git synced 2025-07-03 22:56:33 +02:00

Replace all calls to access by gnupg_access

* common/sysutils.c (gnupg_access): New.  Replace all calls to access
by this wrapper.
* common/homedir.c (w32_shgetfolderpath): Change to return UTF-8
directory name.
(standard_homedir): Adjust for change.
(w32_commondir, gnupg_cachedir): Ditto.
--

Also use SHGetFolderPathW instead of SHGetFolderPathA on Windows.

This is required to correctly handle non-ascii filenames on Windows.

GnuPG-bug-id: 5098
This commit is contained in:
Werner Koch 2020-10-20 10:43:55 +02:00
parent 228836f79f
commit c94ee1386e
No known key found for this signature in database
GPG key ID: E3FDFF218E45B72B
28 changed files with 151 additions and 128 deletions

View file

@ -1581,7 +1581,7 @@ retrieve_options_from_program (gc_component_id_t component, int only_installed)
? gnupg_module_name (gc_component[component].module_name)
: gc_component[component].program );
if (only_installed && access (pgmname, X_OK))
if (only_installed && gnupg_access (pgmname, X_OK))
{
return; /* The component is not installed. */
}
@ -3230,7 +3230,7 @@ gc_apply_profile (const char *fname)
* is installed and use that instead of the given file name. */
fname_buffer = xstrconcat (gnupg_datadir (), DIRSEP_S,
fname, ".prf", NULL);
if (!access (fname_buffer, F_OK))
if (!gnupg_access (fname_buffer, F_OK))
fname = fname_buffer;
}