diff --git a/src/ChangeLog b/src/ChangeLog index 50b0b689..a868d6d9 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2010-10-28 Marcus Brinkmann + + * opassuan.c (gpgme_op_assuan_transact_ext): Fix uninitialized + value use. Reported by Marc Mutz. + 2010-10-07 Werner Koch * gpgme-tool.c (ARGP_ERR_UNKNOWN): Use EDEADLK if available. diff --git a/src/opassuan.c b/src/opassuan.c index 639a3661..bd50089b 100644 --- a/src/opassuan.c +++ b/src/opassuan.c @@ -126,9 +126,10 @@ gpgme_op_assuan_transact_ext (gpgme_ctx_t ctx, data_cb, data_cb_value, inq_cb, inq_cb_value, status_cb, status_cb_value); - if (!err) - err = _gpgme_wait_one_ext (ctx, &op_err); + if (err) + goto out; + err = _gpgme_wait_one_ext (ctx, &op_err); if (op_err) { TRACE_LOG2 ("op_err = %s <%s>", gpgme_strerror (op_err), @@ -140,7 +141,8 @@ gpgme_op_assuan_transact_ext (gpgme_ctx_t ctx, } if (op_err_p) *op_err_p = op_err; - + + out: return TRACE_ERR (err); }