Last modified: 2012-02-08 07:11:19 UTC

Wikimedia Bugzilla is closed!

Wikimedia migrated from Bugzilla to Phabricator. Bug reports are handled in Wikimedia Phabricator.
This static website is read-only and for historical purposes. It is not possible to log in and except for displaying bug reports and their history, links might be broken. See T2751, the corresponding Phabricator task for complete and up-to-date bug report information.
Bug 751 - ~~~~~ shows (���� (�W����)) on Windows XP
~~~~~ shows (���� (�W����)) on Windows XP
Product: MediaWiki
Classification: Unclassified
Internationalization (Other open bugs)
PC Windows XP
: Low normal with 1 vote (vote)
: ---
Assigned To: Nobody - You can work on this!
: i18n, testme
: 1943 10445 (view as bug list)
Depends on:
Blocks: unicode
  Show dependency treegraph
Reported: 2004-10-20 14:59 UTC by Suisui
Modified: 2012-02-08 07:11 UTC (History)
8 users (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Description Suisui 2004-10-20 14:59:38 UTC
on WindowsXP, Apache system, ~~~~~ shows strange timezone name like
 2004年10月20日 (水) 23:31 (���� (�W����))

I Guess, this is came from my windows is Japanese version and timezon is not UTC.
Comment 1 JeLuF 2004-10-20 18:36:30 UTC
Is this wiki public, can you provide a URL?
Comment 2 Suisui 2004-10-21 01:21:04 UTC
No, Local instration.

But I read Parser.php and test some tiny proglam as below
    print getenv('TZ')."<BR>";
shows nothing on windows. and 
    print date('T')."<BR>";
in Shift-Jis Code on Japanese Windows! (above is UTF-8 Code)

This code may change earch local versions of windows...
on MacOSX or Linux shows "JST" this is correct.

So this may be PHP bug? I donno.
PHP Manul says just "date('T') shows timezone"
and doesn't say "timezone in code"....
Comment 3 Brion Vibber 2005-04-22 13:07:26 UTC
*** Bug 1943 has been marked as a duplicate of this bug. ***
Comment 4 Brion Vibber 2005-04-22 13:08:36 UTC
comment from bug 1943:

> Hello,
> I use Mediawiki (in combination with XAMPP on MS XP) with Unicode. It works
fine, but 
> with one exception: if you insert a signature with --~~~~ it shows the 
> phrase "Westeurop䩳che Sommerzeit", but the right word would be "Westeuropäische 
> Sommerzeit". If I searched for the phrase in the MySQL-DB I found the article
and in 
> the datafield the phrase was wrote right. I tried to repair it but I could not
> it in any configuration-file.
Comment 5 aholle 2005-08-19 15:44:44 UTC

My setup is XAMPP 1.14.12 on Windows 2000 and Mediawiki 1.5beta4. Generally it
works fine, too. 
The signature --~~~~ also produces a phrase like "Westeurop䩳che Sommerzeit",
but the right word would be "Westeuropäische Sommerzeit". As this is not comming
from the MediaWiki source code it sounds like the Wiki takes it out of the
Windows time zone configuration but does not transfer it into Unicode correctly.
Comment 6 lɛʁi לערי ריינהארט 2005-11-15 11:19:16 UTC
blocks bug 3969
Comment 7 lɛʁi לערי ריינהארט 2005-12-01 18:25:07 UTC
� is
HTML Entity (decimal)  	&#65533;
HTML Entity (hex) 	&#xfffd;
UTF-8 (hex) 	0xEF 0xBF 0xBD (efbfbd)
Comment 8 Philippe Verdy 2007-05-07 19:52:14 UTC
Looks like the Windows 2000 is lacking support for the conversion of a Japanese codepage to Unicode, and 
the localization data contains Unicode characters not supported in this version of Windows . As Windows 
2000 does not know to which Unicode codepoint the JISX encoding maps to, it converts the rest to 
replacement characters.

Or the server was not started with the correct OEM codepage, for example from an old legacy codepage 
defined in the user's locale environment, so JISX codes are not correctly converted.
Comment 9 Brion Vibber 2007-07-03 18:27:00 UTC
*** Bug 10445 has been marked as a duplicate of this bug. ***
Comment 10 Romain Riviere 2007-07-03 18:37:28 UTC
(In reply to comment #9)
> *** Bug 10445 has been marked as a duplicate of this bug. ***

Indeed, I had missed that bug.

Does my suggestion seem acceptable to you ?
That is to say, edit Parser.php, lines 3701-3702 to :

 $d = $wgContLang->timeanddate( date( 'YmdHis' ), false, false) .
                  ' (' . utf8_encode(date( 'T' )) . ')';

utf8_encode does the job, in case the OS reports the timezone in a broken format.
Comment 11 Brion Vibber 2007-07-03 18:47:15 UTC
utf8_encode() only works from ISO 8859-1, so it's not generally suitable. (For instance it will just corrupt the Japanese code.)
Comment 12 Romain Riviere 2007-07-03 19:30:01 UTC
True. Definitely a case of "Works For Me" that won't work elsewhere.
So basically I take it the OS should be set to use UTF-8 in order for this functino to work correctly ? Perhaps it would be worth filing a bug with PHP ... Should it not be PHP's job to make sure that its output conforms to its charset setting ?
Comment 13 Dan Collins 2011-07-17 05:04:06 UTC
Is this upstream? Is this still a bug?
Comment 14 Antoine "hashar" Musso (WMF) 2012-02-01 11:15:04 UTC
(In reply to comment #13)
> Is this upstream? Is this still a bug?

We need someone with a Japanese Windows to install MediaWiki and try it out :-D Probably unlikely to ever happen so I think we should just close this bug report.

Note You need to log in before you can comment on or make changes to this bug.