2002-08-20 Marcus Brinkmann <marcus@g10code.de>

* gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
	* encrypt-sign.c (encrypt_sign_status_handler): Remove op_info
	handling.
This commit is contained in:
Marcus Brinkmann 2002-08-20 11:01:43 +00:00
parent 337119d9b2
commit d50bc6abc1
3 changed files with 17 additions and 17 deletions

View File

@ -1,3 +1,9 @@
2002-08-20 Marcus Brinkmann <marcus@g10code.de>
* gpgme.c (_gpgme_set_op_info): Append data on subsequent calls.
* encrypt-sign.c (encrypt_sign_status_handler): Remove op_info
handling.
2002-08-19 Werner Koch <wk@gnupg.org>
* decrypt.c (is_token,skip_token): Duplicated from verify.c

View File

@ -40,16 +40,7 @@ encrypt_sign_status_handler (GpgmeCtx ctx, GpgmeStatusCode code, char *args)
size_t encrypt_info_len;
_gpgme_encrypt_status_handler (ctx, code, args);
if (code == GPGME_STATUS_EOF)
{
encrypt_info = gpgme_data_release_and_get_mem (ctx->op_info,
&encrypt_info_len);
ctx->op_info = NULL;
}
_gpgme_sign_status_handler (ctx, code, args);
if (code == GPGME_STATUS_EOF && encrypt_info)
_gpgme_data_append (ctx->op_info, encrypt_info, encrypt_info_len);
}

View File

@ -175,20 +175,23 @@ gpgme_get_op_info (GpgmeCtx ctx, int reserved)
}
/*
* Store the data object with the operation info in the
* context. Caller should not use that object anymore.
*/
/* Store the data object INFO with the operation info in the context
CTX. INFO is consumed. Subsequent calls append the data. */
void
_gpgme_set_op_info (GpgmeCtx ctx, GpgmeData info)
{
assert (ctx);
gpgme_data_release (ctx->op_info);
ctx->op_info = NULL;
if (info)
if (!ctx->op_info)
ctx->op_info = info;
else
{
char *info_mem = 0;
size_t info_len;
info_mem = gpgme_data_release_and_get_mem (info, &info_len);
_gpgme_data_append (ctx->op_info, info_mem, info_len);
}
}