Date: prev next · Thread: first prev next last
2012 Archives by date, by thread · List index


Hi Michael,

On Friday, 2012-12-21 17:07:18 +0000, Michael Meeks wrote:

      Was just reading this code for one reason and another, and stumbled
across the gem the appended tries to fix; since I'm not 100% certain
what it's supposed to be doing, I thought I'd ask a man that knows
things :-)

For the case that the localeName argument passed to the function is
a language-only name, for example "en", it determines the fall-back
locale, i.e. a locale we know, in this case "en-US", so we can load
locale data of a known locale.

presumably a loop-invariant condition that will evaluate to
true for the first item - is great for en_US but ... of course, I'm
suspicious that the code / fallback fundamentally doesn't work in more
interesting ways ;-) 

Indeed, it doesn't ... and going back to some previous code of 2004
revealed that there was a similar condition but slightly different as
the code maintained it's own fall-back table, the change introducing the
new fall-back got the condition wrong.

         if (localeName.equalsAscii(aLibTable[i].pLocale) ||
-                (bFallback && localeName == aFallback))
+            (bFallback && aFallback.equalsAscii(aLibTable[i].pLocale)))

Makes sense.
http://cgit.freedesktop.org/libreoffice/core/commit/?id=896e326ace53bedf9b17fa624d260032b91bcfd1
http://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-4-0&id=d3b7a2bfe2a95153134f340c5a13a467de95a0dd
http://cgit.freedesktop.org/libreoffice/core/commit/?h=libreoffice-3-6&id=e4fc7017ec672be095f1bc98c4f957de3c8ddae1

Thanks for spotting

  Eike

-- 
LibreOffice Calc developer. Number formatter stricken i18n transpositionizer.
GnuPG key 0x293C05FD : 997A 4C60 CE41 0149 0DB3  9E96 2F1A D073 293C 05FD
Support the FSFE, care about Free Software! https://fsfe.org/support/?erack

Attachment: pgp9cO23XjPAg.pgp
Description: PGP signature


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.