From ae700e318bb7180806a9454f2881bb10b233039c Mon Sep 17 00:00:00 2001 From: sth Date: Fri, 4 Apr 2003 09:52:39 +0000 Subject: [PATCH] Fix: assertion failed (lock_count>=0) in sc_pkcs15_bind() git-svn-id: https://www.opensc-project.org/svnp/opensc/trunk@979 c6295689-39f2-0310-b995-f0e70906c6a9 --- src/libopensc/pkcs15.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/libopensc/pkcs15.c b/src/libopensc/pkcs15.c index 541e3c88..b1228c3a 100644 --- a/src/libopensc/pkcs15.c +++ b/src/libopensc/pkcs15.c @@ -482,7 +482,7 @@ int sc_pkcs15_bind(struct sc_card *card, err = sc_lock(card); if (err) { error(ctx, "sc_lock() failed: %s\n", sc_strerror(err)); - goto error; + goto error_unlock; } if (card->app_count < 0) { @@ -579,8 +579,9 @@ done: sc_unlock(card); return 0; error: - sc_pkcs15_card_free(p15card); sc_unlock(card); +error_unlock: + sc_pkcs15_card_free(p15card); SC_FUNC_RETURN(ctx, 1, err); }