* call-pinentry.c (start_pinentry): Fix for OS X to allow loading

of the bundle.  Tested by Benjamin Donnachie.
This commit is contained in:
Werner Koch 2007-02-20 14:55:32 +00:00
parent fedae25efd
commit e8402d514e
2 changed files with 14 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2007-02-20 Werner Koch <wk@g10code.com>
* call-pinentry.c (start_pinentry): Fix for OS X to allow loading
of the bundle. Tested by Benjamin Donnachie.
2007-02-14 Werner Koch <wk@g10code.com>
* gpg-agent.c: New option --pinentry-touch-file.

View File

@ -214,12 +214,21 @@ start_pinentry (ctrl_t ctrl)
if (!opt.pinentry_program || !*opt.pinentry_program)
opt.pinentry_program = GNUPG_DEFAULT_PINENTRY;
pgmname = opt.pinentry_program;
if ( !(pgmname = strrchr (opt.pinentry_program, '/')))
pgmname = opt.pinentry_program;
else
pgmname++;
/* OS X needs the entire file name in argv[0], so that it can locate
the resource bundle. For other systems we stick to the the usual
convention of supplying only the name of the program. */
#ifdef __APPLE__
argv[0] = opt.pinentry_program;
#else /*!__APPLE__*/
argv[0] = pgmname;
#endif /*__APPLE__*/
if (ctrl->display && !opt.keep_display)
{
argv[1] = "--display";