Created attachment 116471 [details] ODT file with style:rfc-language-tag="grc" Hi there, I have just realized that style:rfc-language-tag with values that don’t include country code aren’t properly recognized by Writer in LibreOffice 5.0beta1. The attached file includes style:rfc-language-tag="grc" (language is detected as "grc" instead of "Greek, Ancient"). There are a bunch of other languages that shouldn’t require a country to be properly recognized. In fact, these languages are all listed in the language dialog that don’t include country in parentheses. A very partial list of these languages: Albanian, Armenian, Basque, Bulgarian, Catalan, Coptic, Croatian, Czech, Danish, Finnish, Greek, Irish and Hungarian. As an additional comment, I think it would be useful to assign language only codes to a a value with country code. This would assign de-DE to de, es-ES to es, fr-FR to fr, it-IT to it, pt-PT to pt, ro-RO to ro, sv-SE to sv. (The previous list is by no means complete.) Many thanks for your help, Pablo
On which LO version are you + which env (Linux, MacOs, Windows)?
(In reply to Julien Nabet from comment #1) > On which LO version are you + which env (Linux, MacOs, Windows)? Sorry, version is 5.0beta 1 and I’m on Linux (Fedora 20).
Julien, the issue still happens with version 5.0 beta 3 in Linux 32bits (I haven’t tested any other OS).
Thank you for your feedback, I put it back to UNCONFIRMED.
(In reply to Pablo Rodríguez from comment #0) > Created attachment 116471 [details] > ODT file with style:rfc-language-tag="grc" Confirmed language is detected as grc. Win 7 Pro 64-bit Version: 5.1.0.0.alpha1+ Build ID: d56b125f6c6c18ac40712cefc3cec06530750e15 TinderBox: Win-x86@39, Branch:master, Time: 2015-06-13_07:08:43 Locale: fi-FI (fi_FI)
** Please read this message in its entirety before responding ** To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year. There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present. If you have time, please do the following: Test to see if the bug is still present on a currently supported version of LibreOffice (5.1.5 or 5.2.1 https://www.libreoffice.org/download/ If the bug is present, please leave a comment that includes the version of LibreOffice and your operating system, and any changes you see in the bug behavior If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a short comment that includes your version of LibreOffice and Operating System Please DO NOT Update the version field Reply via email (please reply directly on the bug tracker) Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not appropriate in this case) If you want to do more to help you can test to see if your issue is a REGRESSION. To do so: 1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) http://downloadarchive.documentfoundation.org/libreoffice/old/ 2. Test your bug 3. Leave a comment with your results. 4a. If the bug was present with 3.3 - set version to "inherited from OOo"; 4b. If the bug was not present in 3.3 - add "regression" to keyword Feel free to come ask questions or to say hello in our QA chat: http://webchat.freenode.net/?channels=libreoffice-qa Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-UntouchedBug-20160920
The bug is still present in LO-5.2.1.2 (Fedora 23).
** Please read this message in its entirety before responding ** To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year. There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present. If you have time, please do the following: Test to see if the bug is still present on a currently supported version of LibreOffice (5.4.1 or 5.3.6 https://www.libreoffice.org/download/ If the bug is present, please leave a comment that includes the version of LibreOffice and your operating system, and any changes you see in the bug behavior If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a short comment that includes your version of LibreOffice and Operating System Please DO NOT Update the version field Reply via email (please reply directly on the bug tracker) Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not appropriate in this case) If you want to do more to help you can test to see if your issue is a REGRESSION. To do so: 1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) http://downloadarchive.documentfoundation.org/libreoffice/old/ 2. Test your bug 3. Leave a comment with your results. 4a. If the bug was present with 3.3 - set version to "inherited from OOo"; 4b. If the bug was not present in 3.3 - add "regression" to keyword Feel free to come ask questions or to say hello in our QA chat: http://webchat.freenode.net/?channels=libreoffice-qa Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-UntouchedBug-20170929
Still present in 6.0.0.0.alpha0+.
** Please read this message in its entirety before responding ** To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year. There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present. If you have time, please do the following: Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/ If the bug is present, please leave a comment that includes the information from Help - About LibreOffice. If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice. Please DO NOT Update the version field Reply via email (please reply directly on the bug tracker) Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not appropriate in this case) If you want to do more to help you can test to see if your issue is a REGRESSION. To do so: 1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from http://downloadarchive.documentfoundation.org/libreoffice/old/ 2. Test your bug 3. Leave a comment with your results. 4a. If the bug was present with 3.3 - set version to 'inherited from OOo'; 4b. If the bug was not present in 3.3 - add 'regression' to keyword Feel free to come ask questions or to say hello in our QA chat: https://kiwiirc.com/nextclient/irc.freenode.net/#libreoffice-qa Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-UntouchedBug
Dear Pablo Rodríguez, To make sure we're focusing on the bugs that affect our users today, LibreOffice QA is asking bug reporters and confirmers to retest open, confirmed bugs which have not been touched for over a year. There have been thousands of bug fixes and commits since anyone checked on this bug report. During that time, it's possible that the bug has been fixed, or the details of the problem have changed. We'd really appreciate your help in getting confirmation that the bug is still present. If you have time, please do the following: Test to see if the bug is still present with the latest version of LibreOffice from https://www.libreoffice.org/download/ If the bug is present, please leave a comment that includes the information from Help - About LibreOffice. If the bug is NOT present, please set the bug's Status field to RESOLVED-WORKSFORME and leave a comment that includes the information from Help - About LibreOffice. Please DO NOT Update the version field Reply via email (please reply directly on the bug tracker) Set the bug's Status field to RESOLVED - FIXED (this status has a particular meaning that is not appropriate in this case) If you want to do more to help you can test to see if your issue is a REGRESSION. To do so: 1. Download and install oldest version of LibreOffice (usually 3.3 unless your bug pertains to a feature added after 3.3) from https://downloadarchive.documentfoundation.org/libreoffice/old/ 2. Test your bug 3. Leave a comment with your results. 4a. If the bug was present with 3.3 - set version to 'inherited from OOo'; 4b. If the bug was not present in 3.3 - add 'regression' to keyword Feel free to come ask questions or to say hello in our QA chat: https://kiwiirc.com/nextclient/irc.freenode.net/#libreoffice-qa Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-UntouchedBug
On pc Debian x86-64 with master sources updated today, I could reproduce this. I noticed this log several times on console: warn:svtools.misc:1258302:1258302:svtools/source/misc/langtab.cxx:239: Language: 0x249 with unknown name, so returning lang-tag of: qlt (Greece) {grc}
part of bt from the first console log quoted in my previous comment: #0 (anonymous namespace)::SvtLanguageTableImpl::GetString(o3tl::strong_int<unsigned short, LanguageTypeTag>) const (this=0x7f702b279d40 <rtl::Static<(anonymous namespace)::SvtLanguageTableImpl, (anonymous namespace)::theLanguageTable>::get()::instance>, eType=...) at svtools/source/misc/langtab.cxx:236 #1 0x00007f702af36d95 in SvtLanguageTable::GetLanguageString(o3tl::strong_int<unsigned short, LanguageTypeTag>) (eType=...) at svtools/source/misc/langtab.cxx:251 #2 0x00007f7014472760 in SwTextShell::GetState(SfxItemSet&) (this=0x701de20, rSet=SfxItemSet of pool 0x76706b0 with parent 0x0 and Which ranges: [(11209, 11209)] = {...}) at sw/source/uibase/shells/textsh1.cxx:1663 #3 0x00007f7014460340 in SfxStubSwTextShellGetState(SfxShell*, SfxItemSet&) (pShell=0x701de20, rSet=SfxItemSet of pool 0x76706b0 with parent 0x0 and Which ranges: [(11209, 11209)] = {...}) at workdir/SdiTarget/sw/sdi/swslots.hxx:3086 #4 0x00007f702d98d12a in SfxShell::GetSlotState(unsigned short, SfxInterface const*, SfxItemSet*) (this=0x701de20, nSlotId=11209, pIF=0x3c3ae10, pStateSet=0x0) at sfx2/source/control/shell.cxx:493 #5 0x00007f702d92ce53 in SfxDispatcher::QueryState(unsigned short, com::sun::star::uno::Any&) (this=0x926adb0, nSID=11209, rAny=uno::Any(void)) at sfx2/source/control/dispatch.cxx:1862 #6 0x00007f702da176d6 in SfxDispatchController_Impl::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) (this= 0x8d90300, aListener=uno::Reference to (framework::LanguageSelectionMenuController *) 0x7857758, aURL=...) at sfx2/source/control/unoctitm.cxx:760 #7 0x00007f702da17561 in SfxOfficeDispatch::addStatusListener(com::sun::star::uno::Reference<com::sun::star::frame::XStatusListener> const&, com::sun::star::util::URL const&) (this=0x8d90260, aListener=uno::Reference to (framework::LanguageSelectionMenuController *) 0x7857758, aURL=...) at sfx2/source/control/unoctitm.cxx:279 #8 0x00007f702eea1766 in framework::LanguageSelectionMenuController::updatePopupMenu() (this=0x78576f0) at framework/source/uielement/langselectionmenucontroller.cxx:254 #9 0x00007f702aff5333 in svt::PopupMenuControllerBase::setPopupMenu(com::sun::star::uno::Reference<com::sun::star::awt::XPopupMenu> const&) (this=0x78576f0, xPopupMenu= uno::Reference to (VCLXPopupMenu *) 0x85e64f8) at svtools/source/uno/popupmenucontrollerbase.cxx:356
Eike: I noticed this line: include/i18nlangtag/lang.h:630:#define LANGUAGE_USER_ANCIENT_GREEK LanguageType(0x0649) But I found no ref confirming that ancient Greek corresponded with 0x0649. In decimal so debug in gdb gives 585 so 0x0249 I wanted to try this patch: diff --git a/include/i18nlangtag/lang.h b/include/i18nlangtag/lang.h index ae434fd0c06a..c6a69e59fb68 100644 --- a/include/i18nlangtag/lang.h +++ b/include/i18nlangtag/lang.h @@ -627,7 +627,7 @@ namespace o3tl #define LANGUAGE_USER_ARABIC_PALESTINE LanguageType(0x9801) /* makeLangID( 0x26, getPrimaryLanguage( LANGUAGE_ARABIC_SAUDI_ARABIA)) */ #define LANGUAGE_USER_ARABIC_SOMALIA LanguageType(0x9C01) /* makeLangID( 0x27, getPrimaryLanguage( LANGUAGE_ARABIC_SAUDI_ARABIA)) */ #define LANGUAGE_USER_ARABIC_SUDAN LanguageType(0xA001) /* makeLangID( 0x28, getPrimaryLanguage( LANGUAGE_ARABIC_SAUDI_ARABIA)) */ -#define LANGUAGE_USER_ANCIENT_GREEK LanguageType(0x0649) +#define LANGUAGE_USER_ANCIENT_GREEK LanguageType(0x0249) #define LANGUAGE_USER_ASTURIAN LanguageType(0x064A) #define LANGUAGE_USER_LATGALIAN LanguageType(0x064B) #define LANGUAGE_USER_MAORE LanguageType(0x064C) but it rebuilds a lot of things Or perhaps should we declare LANGUAGE_USER_ANCIENT_GREEK_2? Also, just wonder if "649" would be just a typo instead of "249" and so wonder if there exist some real documents using 649 as ancient Greek.
As the USER in LANGUAGE_USER_ANCIENT_GREEK denotes it is a user defined LCID hence 0x0649 from the set reserved for user defined LCIDs. The 0x0249 is an on-the-fly generated LCID for a language tag {grc} that is not present in our mappings. The value decomposes into primary 0x249 and sub 0x00, whereas the {grc-GR} 0x649 value decomposes into primary 0x249 and sub 0x01, because on-the-fly LCIDs for a language-only tag try to derive from a known language-country LCID. Changing the value in lang.h would be wrong. There's also nothing wrong with generating an on-the-fly LCID for {grc} if there is no predefined 1:1 mapping. The resulting language listbox entry "qlt (Greece) {grc}" looks odd though, the qlt would be our reserved internal use code for an extended language tag when expressed in a lang::Locale, but {grc} wouldn't need any.. The question is rather why the document hast stored style:rfc-language-tag="grc" at all, because the also present fo:language="grc" fo:country="GR" would be sufficient (and actually result in the known {grc-GR} 0x0469 mapping) and the style:rfc-language-tag not needed at all, and we probably create an extended tag if it is present, on purpose because the fo:language and fo:country would only be a subset, but in this case the style:rfc-language-tag is a subset. Which even is a violation of ODF 19.516 style:rfc-language-tag "It shall only be used if its value cannot be expressed as a valid combination of the fo:language 19.871, fo:script 19.242 and fo:country 19.234 attributes". https://docs.oasis-open.org/office/OpenDocument/v1.3/os/part3-schema/OpenDocument-v1.3-os-part3-schema.html#__RefHeading__1418006_253892949 Seeing the document was stored using LibreOfficeDev/5.0.0.0.beta1 I really don't care.. but I'll take a look what actually happens when loading.
Eike Rathke committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/cb56ec6aa8f03fbc70c808bd4f519ce9d3c21f7d Resolves: tdf#92015 Handle malused *:rfc-language-tag ODF violation It will be available in 7.3.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
On pc Debian x86-64 with master sources updated today, I confirm I don't reproduce the pb and got "Greek, Ancient" at bottom of Writer. Thank you Eike for the very quick fix! :-)