diff options
author | Werner Koch <[email protected]> | 2004-04-21 18:14:12 +0000 |
---|---|---|
committer | Werner Koch <[email protected]> | 2004-04-21 18:14:12 +0000 |
commit | 37a4f44f0615916f4a3b08865fd111ee54a005a5 (patch) | |
tree | 03b63cce50cbe914d504e176739d56a5c2b091bf | |
parent | * assuan-socket-connect.c: Include sys/types.h (diff) | |
download | gpgme-37a4f44f0615916f4a3b08865fd111ee54a005a5.tar.gz gpgme-37a4f44f0615916f4a3b08865fd111ee54a005a5.zip |
(gpgme_key_unref): Allow passing NULL like free does.
The rule of least surprise.
-rw-r--r-- | gpgme/ChangeLog | 5 | ||||
-rw-r--r-- | gpgme/key.c | 3 |
2 files changed, 8 insertions, 0 deletions
diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index 1abc055a..3192ad01 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,8 @@ +2004-04-21 Werner Koch <[email protected]> + + * key.c (gpgme_key_unref): Allow passing NULL like free does. + The rule of least surprise. + 2004-04-15 Werner Koch <[email protected]> * verify.c (prepare_new_sig, _gpgme_verify_status_handler): Remove diff --git a/gpgme/key.c b/gpgme/key.c index 05beb114..4634c264 100644 --- a/gpgme/key.c +++ b/gpgme/key.c @@ -304,6 +304,9 @@ gpgme_key_unref (gpgme_key_t key) gpgme_user_id_t uid; gpgme_subkey_t subkey; + if (!key) + return; + LOCK (key_ref_lock); assert (key->_refs > 0); if (--key->_refs) |