@@ -260,21 +260,23 @@ } - (OFEnumerator*)objectEnumerator { return [[[OFDictionaryObjectEnumerator alloc] - initWithData: data - size: size - mutationsPointer: &mutations] autorelease]; + initWithDictionary: self + data: data + size: size + mutationsPointer: &mutations] autorelease]; } - (OFEnumerator*)keyEnumerator { return [[[OFDictionaryKeyEnumerator alloc] - initWithData: data - size: size - mutationsPointer: &mutations] autorelease]; + initWithDictionary: self + data: data + size: size + mutationsPointer: &mutations] autorelease]; } #ifdef OF_HAVE_BLOCKS - (void)enumerateKeysAndObjectsUsingBlock: (of_dictionary_enumeration_block_t)block @@ -285,11 +287,12 @@ unsigned long mutations2 = mutations; for (i = 0; i < size && !stop; i++) { if (mutations != mutations2) @throw [OFEnumerationMutationException - newWithClass: isa]; + newWithClass: isa + object: self]; if (data[i] != NULL && data[i] != DELETED) { block(data[i]->key, data[i]->object, &stop); [pool releaseObjects]; } @@ -306,11 +309,12 @@ unsigned long mutations2 = mutations; for (i = 0; i < size && !stop; i++) { if (mutations != mutations2) @throw [OFEnumerationMutationException - newWithClass: isa]; + newWithClass: isa + object: self]; if (data[i] != NULL && data[i] != DELETED) { id new = block(data[i]->key, data[i]->object, &stop); if (new == nil)