json: Add file handling for debug output
* src/gpgme-json.c (main): Add possibilty to set log file. -- This is similar to how GPGME_DEBUG works. It takes ; on Windows as seperator and : on linux. Followed by a file name. For Linux it might make sense to use a different seperator to allow setting a socket explicitly. But this is better in line with the current GPGME_DEBUG behavior. The change helps on Windows where we don't have a log socket.
This commit is contained in:
parent
19c5267f86
commit
d8beab30c4
@ -3617,6 +3617,8 @@ main (int argc, char *argv[])
|
||||
};
|
||||
gpgrt_argparse_t pargs = { &argc, &argv};
|
||||
|
||||
int log_file_set = 0;
|
||||
|
||||
gpgrt_set_strusage (my_strusage);
|
||||
|
||||
#ifdef HAVE_SETLOCALE
|
||||
@ -3653,12 +3655,24 @@ main (int argc, char *argv[])
|
||||
|
||||
if (!opt_debug)
|
||||
{
|
||||
/* Handling is similar to GPGME_DEBUG */
|
||||
const char *s = getenv ("GPGME_JSON_DEBUG");
|
||||
const char *s1;
|
||||
|
||||
if (s && atoi (s) > 0)
|
||||
opt_debug = 1;
|
||||
{
|
||||
opt_debug = 1;
|
||||
s1 = strchr (s, PATHSEP_C);
|
||||
if (s1 && strlen (s1) > 2)
|
||||
{
|
||||
s1++;
|
||||
log_set_file (s1);
|
||||
log_file_set = 1;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (opt_debug)
|
||||
if (opt_debug && !log_file_set)
|
||||
{
|
||||
const char *home = getenv ("HOME");
|
||||
char *file = xstrconcat ("socket://",
|
||||
|
Loading…
Reference in New Issue
Block a user