Bugzilla – Bug 3542
Choosing "No default language support" shows blank territory
Last modified: 2008-11-24 12:53:42 UTC
You need to log in before you can comment on or make changes to this bug.
In the installer panel where the default language is chosen, chosing "No default language support" used to make it clear that was equivalent to C/POSIX. Now, it shows an empty space under "Territory". This is a regression from 2008.05 which turned that strip into the string "C/POSIX".
After talking to Moriah, I'm clearing the Target Milestone as this bug may be more serious than just the territory on the pull-down menu being blank. When the install has completed, it appears the actual locale being installed is "C/POSIX" but there isn't such a locale on the system. Presumedly it should be just "C" so it appears there's a regression here in handing this choice.
Adding this back as a potential blocker. We need to determine if this is more than just cosmetic.
Yes, we end up with C/POSIX in /etc/default/init, and a bunch of messages about it during boot. Since it's invalid the user environment ends us C, but it'll surely trigger numerous reports and should be fixed. Needs diagnosis to understand what changed here.
Assigning to Evan for investigation
It appears that the fix for 2357 changed the logic slightly and it now expects each "language" to have a default locale. However the "No default language support" language entry doesn't have a default language set so one is not displayed on the language screen. Also since this is the only locale that would be added for this language there's nothing to display since it fails to get a locale name. The fix for this would simply be to make sure the C/POSIX locale is the default locale for "No default language support". I don't believe that this should be a stopper since the C/POSIX locale is what gets used by default anyway.
It's a stopper because the user will seem multiple errors printed on boot and that will result in calls.
It appears that the reason that "C/POSIX" isn't displayed is indeed because it's not marked as the default, so it never gets added to the combo box in on_language_selected(). The reason that we're getting the error messages at boot is because a line for LANG="C/POSIX" is being added to the end of /etc/default/init. The string "C/POSIX" is being taken from the locale_desc field in the locale_info_t structure defined for cposix. This structure is defined as: static locale_info_t cposix = { N_("C/POSIX"), N_("C/POSIX"), B_TRUE, NULL }; Before the change for 2357 if "No default language support" was chosen nothing would be added to /etc/default/init. However with this change C/POSIX is handled the same as any other language/locale and we end up with this invalid entry.
Please refer to http://defect.opensolaris.org/bz/show_bug.cgi?id=4499 http://defect.opensolaris.org/bz/show_bug.cgi?id=4500 Fixes are posted too.
Sorry. Close the bug by mistake.
*** Bug 4499 has been marked as a duplicate of this bug. ***
*** Bug 4500 has been marked as a duplicate of this bug. ***
Fixed in changeset: 18b0fec7f195cccd52070be43715363264bcb0c5
*** Bug 5079 has been marked as a duplicate of this bug. ***
*** Bug 5297 has been marked as a duplicate of this bug. ***