diff options
author | Werner Koch <wk@gnupg.org> | 2011-01-10 11:37:57 +0100 |
---|---|---|
committer | Werner Koch <wk@gnupg.org> | 2011-01-10 11:37:57 +0100 |
commit | 2732f2ff3f44a5aae969d5ce16a4de74478576a2 (patch) | |
tree | 38b543eeaab06c36c2c4b3263bbd63c6655403d4 /common/session-env.c | |
parent | Support the gnuk token pinpad code. (diff) | |
download | gnupg2-2732f2ff3f44a5aae969d5ce16a4de74478576a2.tar.xz gnupg2-2732f2ff3f44a5aae969d5ce16a4de74478576a2.zip |
Fix bug #1311.
Diffstat (limited to 'common/session-env.c')
-rw-r--r-- | common/session-env.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/common/session-env.c b/common/session-env.c index 2dcf425b6..d719a7b87 100644 --- a/common/session-env.c +++ b/common/session-env.c @@ -183,10 +183,11 @@ update_var (session_env_t se, const char *string, size_t namelen, else if (!strncmp (se->array[idx]->name, string, namelen) && strlen (se->array[idx]->name) == namelen) { - /* Check if the value is the same; no need to update it, - except for updating the default flag. */ if (strlen (se->array[idx]->value) == valuelen) { + /* The new value has the same length. We can update it + in-place. */ + memcpy (se->array[idx]->value, value, valuelen); se->array[idx]->is_default = !!set_default; return 0; } |