** Description changed: - In file session-child.c in function session_child_run() variable - `locale_var_names` contains explicit list of locale environment - variables to inherit. This list lacks of some LC_* variables: LC_PAPER, - LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT and LC_IDENTIFICATION. - As a result, these variables are not inherited by child session. - Therefore, processes inside desktop session set these variables to the - value of LANG, instead of appropriate values configured in - /etc/locale.conf. + [Impact] + Not all system locale variables are passed to sessions. - $ more /etc/locale.conf - LANG=en_US.UTF-8 - LC_CTYPE=pl_PL.UTF-8 - LC_NUMERIC=pl_PL.UTF-8 - LC_TIME=pl_PL.UTF-8 - LC_COLLATE=pl_PL.UTF-8 - LC_MONETARY=pl_PL.UTF-8 - LC_MESSAGES=en_US.UTF-8 - LC_PAPER=pl_PL.UTF-8 - LC_NAME=pl_PL.UTF-8 - LC_ADDRESS=pl_PL.UTF-8 - LC_TELEPHONE=pl_PL.UTF-8 - LC_MEASUREMENT=pl_PL.UTF-8 - LC_IDENTIFICATION=pl_PL.UTF-8 - LC_ALL= + [Test Case] + 1. Edit /etc/locale.conf and set LC_PAPER to a particular value + 2. Start LightDM + 3. Log into a session - Inside desktop session: + Expected result: + LC_PAPER is set to the value in /etc/locale.conf - $ locale - LANG=en_US.utf8 - LC_CTYPE=pl_PL.UTF-8 - LC_NUMERIC=pl_PL.UTF-8 - LC_TIME=pl_PL.UTF-8 - LC_COLLATE=pl_PL.UTF-8 - LC_MONETARY=pl_PL.UTF-8 - LC_MESSAGES=en_US.UTF-8 - LC_PAPER="en_US.utf8" - LC_NAME="en_US.utf8" - LC_ADDRESS="en_US.utf8" - LC_TELEPHONE="en_US.utf8" - LC_MEASUREMENT="en_US.utf8" - LC_IDENTIFICATION="en_US.utf8" - LC_ALL= + Observed result: + LC_PAPER is not set. - Notice wrong values of LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, - LC_MEASUREMENT and LC_IDENTIFICATION (en_US.utf8 instead pl_PL.UTF-8). - - Fix: - - Add LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT and - LC_IDENTIFICATION to the `locale_var_names` array in file session- - child.c. + [Regression potential] + Low. We just added to an existing list of LC_* variables that are passed through to sessions.
** Changed in: lightdm (Ubuntu Vivid) Assignee: (unassigned) => Robert Ancell (robert-ancell) -- You received this bug notification because you are a member of Ubuntu Touch seeded packages, which is subscribed to lightdm in Ubuntu. https://bugs.launchpad.net/bugs/1511259 Title: Session child does not inherit all LC_* variables Status in Light Display Manager: Fix Committed Status in Light Display Manager 1.10 series: Fix Committed Status in Light Display Manager 1.14 series: Fix Released Status in Light Display Manager 1.16 series: Fix Committed Status in Light Display Manager 1.2 series: Won't Fix Status in lightdm package in Ubuntu: Fix Committed Status in lightdm source package in Vivid: In Progress Bug description: [Impact] Not all system locale variables are passed to sessions. [Test Case] 1. Edit /etc/locale.conf and set LC_PAPER to a particular value 2. Start LightDM 3. Log into a session Expected result: LC_PAPER is set to the value in /etc/locale.conf Observed result: LC_PAPER is not set. [Regression potential] Low. We just added to an existing list of LC_* variables that are passed through to sessions. To manage notifications about this bug go to: https://bugs.launchpad.net/lightdm/+bug/1511259/+subscriptions -- Mailing list: https://launchpad.net/~touch-packages Post to : touch-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~touch-packages More help : https://help.launchpad.net/ListHelp