summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source4/rpc_server/drsuapi/getncchanges.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/source4/rpc_server/drsuapi/getncchanges.c b/source4/rpc_server/drsuapi/getncchanges.c
index 2754c8f9b0..165e485d45 100644
--- a/source4/rpc_server/drsuapi/getncchanges.c
+++ b/source4/rpc_server/drsuapi/getncchanges.c
@@ -94,12 +94,13 @@ static WERROR get_nc_changes_build_object(struct drsuapi_DsReplicaObjectListItem
attids[n] = md.ctr.ctr1.array[i].attid;
n++;
}
- if (n == 0) {
- /* nothing to send */
- talloc_free(obj->meta_data_ctr);
- obj->meta_data_ctr = NULL;
- return WERR_OK;
- }
+
+ /*
+ note that if n==0 we still need to send the change, as it
+ could be a rename, which changes the uSNChanged, but not any
+ of the replicated attributes
+ */
+
obj->meta_data_ctr->count = n;
obj->object.identifier = talloc(obj, struct drsuapi_DsReplicaObjectIdentifier);