We're updating the issue view to help you get more done. 

Possible bug in utrie_enum()

Description

Possible bug in utrie_enum():

1 2 3 if(block==prevBlock) { /* the block is the same as the previous one, and filled with value */ c+=UTRIE_BLOCK_LENGTH;

This seems to be left over from the initial compaction which only overlapped adjacent data blocks if they have the same values in the adjacent parts. Later, compaction was improved by looking for whole-block matches in previous data, which can fully overlap adjacent blocks if they contain the same data – but not necessarily the same value throughout the blocks.

If this is indeed a bug, then there is a potential for UnicodeSet to be wrong for properties with unfortunate data distribution.

Investigate, confirm, and fix if necessary.

Environment

Status

Assignee

Markus Scherer

Reporter

Markus Scherer

Time Needed

Hours

tracCreated

Aug 31, 2008, 9:23 PM

tracOwner

markus

tracProject

ICU4C

tracReporter

markus

tracResolution

fixed

tracReviewer

andy

tracStatus

closed

tracWeeks

0.2

Components

Fix versions

Priority

medium