On 09/24/2012 08:51 AM, Michael Chang wrote:
We don't insert gettext module if message catalog file missing to
prevent error message from being logged.
Signed-off-by: Michael Chang <mch...@suse.com>
---
util/grub.d/00_header.in | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/util/grub.d/00_header.in b/util/grub.d/00_header.in
index bb34ef2..d438d52 100644
--- a/util/grub.d/00_header.in
+++ b/util/grub.d/00_header.in
@@ -182,10 +182,14 @@ EOF
# Gettext variables and module
if [ "x${LANG}" != "xC" ] ; then
Couldn't / sholdn't this check be replaced by the new check you introduce?
+# We don't insert gettext module if message catalog file missing
+# To prevent error message from being logged (bnc#771393)
That seems like a reference to some (internal Suse?) bugtracker? To me
it is https://bugzilla.redhat.com/show_bug.cgi?id=817187 , but I guess
https://savannah.gnu.org/bugs/?35880 is the best reference.
cat << EOF
- set locale_dir=\$prefix/locale
- set lang=${grub_lang}
- insmod gettext
+ if [ -f "\$prefix/locale/${grub_lang}.mo" ] ; then
+ set locale_dir=\$prefix/locale
+ set lang=${grub_lang}
+ insmod gettext
+ fi
EOF
fi
I'm +1 for the principle, but does it really work for real world locales
like de_DE which will use de.mo on runtime?
I would guess that it also should handle all the logic in gettext.c
grub_gettext_init_ext() and grub_mofile_open_lang() and how these
functions are invoked: .gz extension, _CC stripping and
primary/secondary locale_dir.
(I would prefer if all this processing could be done in mkconfig instead
of on runtime, but I guess the desire for backward compatibility
prevents that.)
(It also seems to me like the current system lacks support for fallback
from ll_CC@unknownvariant to ll_CC and ll. I don't know if that is a
real problem.)
/Mads
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/grub-devel