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

ICU4C numbering system cache uses wrong hashtable keys

Description

The C++ numbering system cache (source/i18n/numfmt.cpp, makeInstance()) uses the wrong hashtable keys. It just calls desiredLocale.hashCode() and uses that in uhash_iget() and uhash_iput(). This will fail if two different locales return the same hashCode()s.

It should use either Locale objects or canonicalized locale ID strings as keys.

Environment

Status

Assignee

Dragan Besevic

Reporter

Markus Scherer

Time Needed

Hours

tracCreated

Apr 28, 2011, 11:01 PM

tracOwner

dbesevic

tracProject

ICU4C

tracReporter

markus

tracStatus

accepted

tracWeeks

0.2

Components

Priority

medium