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

Simplify Data Loading in ICU4C

Description

See if the code for ICU data loading can be simplified.

I've opened this ticket after reviewing ticket 8265, which was a fix for a threading race bug in data loading. While, as far as I can see, the code looks safe, it has also (over time, not just from bug 8265) grown in complexity to the point that it is difficult to have good confidence that everything is safe.

openCommonData() is confusing, and has a suspicious looking TODO.

The loop in doLoadFromCommonData() is confusing.

We also need to better document which data-related functions are thread safe and which aren't.

Status

Assignee

Andy Heninger

Reporter

Andy Heninger

Labels

None

Reviewer

None

Time Needed

Days

Start date

None

Components

Priority

medium