> After selecting fi_FI translation from preferences the options page loaded
> in finnish after a refresh. Also the folder frame loaded in finnish after
> page refresh. Oddly enough, toolbar and folder listings still remained in
> english. I double-checked the settings and logged in/out with several
> users and even changed the default language to fi_FI. Still, finnish pages
> were availailable at total random. After httpd2 restart the login page
> appeared in finnish for the first attempt, english on further logins.
> Apparently this isn't an issue with gettext not working properly is it? My
> investigations on archives revealed that it might have something to do
> with apache2 MPM, but that's all I've found out so far.
'MPM something' was a question, which wanted to make sure that user is
using prefork MPM with php. I think I haven't said anything about possible
> Here are the system specs:
> - Mandrake 10.1 official x86_64
> - apache2-2.0.50
> - php-4.3.8 (--with-gettext=/usr)
> - squirrelmail 1.4.4 + fi_FI locale
find functions/i18n.php file line 'setlocale(LC_ALL, $longlocale);' and
attach some debugging function there. For example:
$debug = setlocale(LC_ALL, $longlocale);
$log = (is_bool($debug) ? 'false: '.$longlocale : $debug);
this code processes output of setlocale call and logs it in
/tmp/test-setlocale.log file. Log file should always contain lines with
locale names. fi_FI.ISO8859-1 in your case. If it contains 'false: locale
name' strings mixed with similar 'locale name' strings, try reproducing
same behaviour on other Linux distribution with same apache2/php or
vanilla apache 2.0.50 and php 4.3.8 install. Or try reproducing it on
latest vanilla apache2/php4 versions.
If log always contains locale names without 'false: ' prefix and
translations are still randomly failing, you'll have to attach debug
functions to bindtextdomain() and textdomain() function calls or do some
hacks with php cli and strace.
If log always contains locale names with 'false: ' prefix and you use
Mandrake, check squirrelmail knownbugs wiki page, try reproducing it on
latest 1.4.5cvs or ask Mandrake developers why they broke standard glibc +
gnu gettext behaviour.
If you use other Linux distribution and log always contains locale names
with 'false: ' prefix, make sure that you have appropriate system locales.
If you use non Linux OS, you might have to check php safe mode settings
and debug only bindtextdomain and textdomain functions.
If you have enabled any plugin that is not included in vanilla
squirrelmail package or modified squirrelmail scripts, developers might
need information about it in order to understand your problem.