Re: Feedback wanted: fix approach for JB 4255?
Deborah Goldsmith <[email protected]> Mon, 29 Nov 2004 17:59:19 -0800
| Newsgroups | gmane.comp.lib.icu.general |
|---|---|
| Message-ID | <[email protected]> |
Any comments? Deborah On Nov 19, 2004, at 5:12 PM, Deborah Goldsmith wrote: > Hi, > > I just encountered JB 4255, which is yet another problem with setting > warnings properly when fetching display names, this time in > uloc_getDisplayName. The problem is that each individaul > uloc_getDisplay* smashes the incoming status code, so the code > returned by uloc_getDisplayName is the one from the last component of > the name, not the union of any warnings encountered. You can read the > bug for a slightly lengthier explanation. > > I know this is too late for 3.2, but I need to fix this in my copy. My > proposed fix is to change uloc_getDisplay* to not smash the incoming > error code when calling uloc_get*. uloc_getDisplay* already sets the > output code if an error occurs, so we might as well use a local status > code for the call to uloc_get*; that would preserve the incoming code. > Does this seem like a reasonable approach? The other approach would be > to have uloc_getDisplayName manually merge the warning codes from the > component calls. > > By the way, uloc_getDisplay(Language/Script/Country/Variant) could > share a common worker routine and just pass a pointer to a function to > get the desired component, since > uloc_get(Language/Script/Country/Variant) all share the same > signature. That would save a bit of code. I filed JB 4256 for that. > > Deborah