1649. [bug] Silence "unexpected non-minimal diff" message.

[RT #11206]
This commit is contained in:
Mark Andrews 2004-06-04 03:45:15 +00:00
parent 3fcb35a9d2
commit 070c07a44f
2 changed files with 16 additions and 9 deletions

View file

@ -1,3 +1,6 @@
1649. [bug] Silence "unexpected non-minimal diff" message.
[RT #11206]
1646. [bug] win32: logging file versions didn't work with
non-UNC filenames. [RT#11486]

View file

@ -15,7 +15,7 @@
* PERFORMANCE OF THIS SOFTWARE.
*/
/* $Id: update.c,v 1.88.2.9 2004/05/12 06:39:11 marka Exp $ */
/* $Id: update.c,v 1.88.2.10 2004/06/04 03:45:15 marka Exp $ */
#include <config.h>
@ -1027,14 +1027,16 @@ add_rr_prepare_action(void *data, rr_t *rr) {
isc_result_t result = ISC_R_SUCCESS;
add_rr_prepare_ctx_t *ctx = data;
dns_difftuple_t *tuple = NULL;
isc_boolean_t equal;
/*
* If the update RR is a "duplicate" of the update RR,
* the update should be silently ignored.
*/
if (dns_rdata_compare(&rr->rdata, ctx->update_rr) == 0 &&
rr->ttl == ctx->update_rr_ttl) {
equal = ISC_TF(dns_rdata_compare(&rr->rdata, ctx->update_rr) == 0);
if (equal && rr->ttl == ctx->update_rr_ttl) {
ctx->ignore_add = ISC_TRUE;
return (ISC_R_SUCCESS);
}
/*
@ -1062,12 +1064,14 @@ add_rr_prepare_action(void *data, rr_t *rr) {
&rr->rdata,
&tuple));
dns_diff_append(&ctx->del_diff, &tuple);
CHECK(dns_difftuple_create(ctx->add_diff.mctx,
DNS_DIFFOP_ADD, ctx->name,
ctx->update_rr_ttl,
&rr->rdata,
&tuple));
dns_diff_append(&ctx->add_diff, &tuple);
if (!equal) {
CHECK(dns_difftuple_create(ctx->add_diff.mctx,
DNS_DIFFOP_ADD, ctx->name,
ctx->update_rr_ttl,
&rr->rdata,
&tuple));
dns_diff_append(&ctx->add_diff, &tuple);
}
}
failure:
return (result);