php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #70574 Tests fail due to relying on Linux fallback behavior for gettext()
Submitted: 2015-09-24 16:34 UTC Modified: -
From: rainer dot jung at kippdata dot de Assigned:
Status: Closed Package: Gettext related
PHP Version: 7.0.0RC3 OS: Solaris
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: rainer dot jung at kippdata dot de
New email:
PHP Version: OS:

 

 [2015-09-24 16:34 UTC] rainer dot jung at kippdata dot de
Description:
------------
The following six gettext tests fail on Solaris:

- ext/gettext/tests/gettext_basic-enus.phpt
- ext/gettext/tests/gettext_bindtextdomain-cwd.phpt
- ext/gettext/tests/gettext_dcgettext.phpt
- ext/gettext/tests/gettext_dgettext.phpt
- ext/gettext/tests/gettext_dngettext-plural.phpt
- ext/gettext/tests/gettext_ngettext.phpt

They fail, because they set locale to en_US.UTF-8, but the message catalog used in the tests is located in ext/gettext/tests/locale/en.

On Linux, gettext() has a fallback behavior. If it can't find the message for a certain locale, it will try other similar locals. So after looking for en_US.UTF-8, it checks en_US and finally en. But this behavior is a non-standard extension. On Solaris, gettext() will not fall back from en_US.UTF-8 to en.

The problem can be fixed for any platform, by moving the directory with the test message catalog to the correct place:

- move ext/gettext/tests/locale/en to ext/gettext/tests/locale/en_US.UTF-8
- move ext/gettext/tests/locale/fi to ext/gettext/tests/locale/fi_FI



Patches

Pull Requests

Pull requests:

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2020-08-05 12:05 UTC] flo at dotbox dot org
The following pull request has been associated:

Patch Name: Move message catalog to proper locale directory to fix #70574
On GitHub:  https://github.com/php/php-src/pull/5940
Patch:      https://github.com/php/php-src/pull/5940.patch
 [2020-08-07 12:38 UTC] nikic@php.net
Automatic comment on behalf of florian.engelhardt@oxid-esales.com
Revision: http://git.php.net/?p=php-src.git;a=commit;h=5be670265b261f2c0162ba89827f5652ba584b05
Log: Fix bug #70574: Move files to proper locale dir
 [2020-08-07 12:38 UTC] nikic@php.net
-Status: Open +Status: Closed
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Mon Dec 30 17:01:29 2024 UTC