diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/ChangeLog | 5 | ||||
-rw-r--r-- | tools/gpg-connect-agent.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/tools/ChangeLog b/tools/ChangeLog index 69a24302b..a032c06af 100644 --- a/tools/ChangeLog +++ b/tools/ChangeLog @@ -1,3 +1,8 @@ +2007-10-24 Werner Koch <[email protected]> + + * gpg-connect-agent.c (substitute_line): Restore temporary nul + marker. + 2007-10-23 Werner Koch <[email protected]> * gpgconf-comp.c (gc_process_gpgconf_conf): Add arg diff --git a/tools/gpg-connect-agent.c b/tools/gpg-connect-agent.c index 197172ee2..ae931e791 100644 --- a/tools/gpg-connect-agent.c +++ b/tools/gpg-connect-agent.c @@ -578,9 +578,11 @@ substitute_line (char *buffer) } if (p[1] == '{' && *pend == '}') { - *pend++ = 0; + int save = *pend; + *pend = 0; freeme = get_var_ext (p+2); value = freeme; + *pend++ = save; } else if (*pend) { @@ -615,7 +617,7 @@ substitute_line (char *buffer) n += valuelen; strcpy (dst + n, pend); line = dst + n; - free (result); + xfree (result); result = dst; } xfree (freeme); |