diff options
author | NIIBE Yutaka <[email protected]> | 2018-09-18 00:34:00 +0000 |
---|---|---|
committer | NIIBE Yutaka <[email protected]> | 2018-09-18 00:34:00 +0000 |
commit | fe8b6339542f3b1228b5fd56fc710ea3b07a3a2b (patch) | |
tree | e5835653dc4c5f95753b616729ec13a54451474c | |
parent | g10: Fix another memory leak. (diff) | |
download | gnupg-fe8b6339542f3b1228b5fd56fc710ea3b07a3a2b.tar.gz gnupg-fe8b6339542f3b1228b5fd56fc710ea3b07a3a2b.zip |
g10: Fix memory leak for --card-status.
* g10/card-util.c (card_status): Release memory of serial number.
Signed-off-by: NIIBE Yutaka <[email protected]>
-rw-r--r-- | g10/card-util.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/g10/card-util.c b/g10/card-util.c index e9c0120a1..779e9d8e7 100644 --- a/g10/card-util.c +++ b/g10/card-util.c @@ -674,7 +674,7 @@ card_status (ctrl_t ctrl, estream_t fp, const char *serialno) { int err; strlist_t card_list, sl; - char *serialno0; + char *serialno0, *serialno1; int all_cards = 0; if (serialno == NULL) @@ -700,8 +700,6 @@ card_status (ctrl_t ctrl, estream_t fp, const char *serialno) for (sl = card_list; sl; sl = sl->next) { - char *serialno1; - if (!all_cards && strcmp (serialno, sl->d)) continue; @@ -722,7 +720,8 @@ card_status (ctrl_t ctrl, estream_t fp, const char *serialno) } /* Select the original card again. */ - err = agent_scd_serialno (&serialno0, serialno0); + err = agent_scd_serialno (&serialno1, serialno0); + xfree (serialno1); leave: xfree (serialno0); |