UNCONFIRMED Bug 41256
Bengali not rendering on Windows XP (some configurations?)
https://bugs.webkit.org/show_bug.cgi?id=41256
Summary Bengali not rendering on Windows XP (some configurations?)
S M Mahbub Murshed
Reported 2010-06-26 19:51:52 PDT
I created a Bengali input system using javascript. To do this, I created a javascript map for English vs Bengali character. So if you press j, the corresponding Bengali character ক (\u0995) pops up in the editor. But safari does not respect the English vs Bengali character map. For example the following map works well in all browsers (IE, FF, Chrome, Opera) but not in Safari. var unicode_keyboard_map = {"a":"ৃ", "A":"র্", "d":"ি", "D":"ী", "s":"ু", "S":"ূ", "f":"া", "F":"অ", "g":"্", "G":"।"}; An example program is attached. Note that, in FF if you open the attached index.html and type j, you will see 'ক' printed. But if you type anything in Safari nothing comes up. The reason is var CUni = unicode_keyboard_map[C]; CUni is null here. I am using Safari 5.0.
Attachments
The test case (1.72 KB, application/octet-stream)
2010-06-26 20:24 PDT, S M Mahbub Murshed
no flags
Modified test case (12.16 KB, application/octet-stream)
2010-06-29 17:06 PDT, S M Mahbub Murshed
no flags
S M Mahbub Murshed
Comment 1 2010-06-26 20:24:27 PDT
Created attachment 59846 [details] The test case
Alexey Proskuryakov
Comment 2 2010-06-27 14:32:15 PDT
I cannot reproduce this problem on Mac OS X. Will try Windows when I have access to it.
Alexey Proskuryakov
Comment 3 2010-06-29 10:37:14 PDT
I cannot reproduce this on Windows either.
S M Mahbub Murshed
Comment 4 2010-06-29 10:41:39 PDT
Interestingly, I could not reproduce it on a Windows XP 64. However, it's still shows up in the Windows XP 32. Would be possible for you verify on a Windows XP 32 box?
Alexey Proskuryakov
Comment 5 2010-06-29 11:31:24 PDT
Geoff, Adam, is there anything that can possibly be different between Safari on 32 bit and 64 bit Windows? I don't have 32 bit Windows to test with. > Interestingly, I could not reproduce it on a Windows XP 64. However, it's > still shows up in the Windows XP 32. Would be possible for you verify on > a Windows XP 32 box? What does it say if you enter "javascript:alert(navigator.userAgent)" in address bar (without quote marks)?
Adam Roben (:aroben)
Comment 6 2010-06-29 12:27:00 PDT
(In reply to comment #5) > Geoff, Adam, is there anything that can possibly be different between Safari on 32 bit and 64 bit Windows? I don't have 32 bit Windows to test with. It's certainly possible. We only compile Safari/WebKit in 32-bit mode on Windows, but they run under under WOW64 on 64-bit OSes.
S M Mahbub Murshed
Comment 7 2010-06-29 12:32:44 PDT
I am confused myself! I just tested this on a Vista 32 machine and could not reproduce it! I will update the browser (which I downloaded about a week ago) again and see if I can find anything. I debugged thru the javascript debugger and tried several ways to create arrays before submitting the bug here. I was 100% certain about the problem. However, I could dig even deeper, if I knew how to/had the sources. Let's see what I find tonight.
Zoltan Herczeg
Comment 8 2010-06-29 12:33:35 PDT
This is very interesting. Could you do some tests? 1) var unicode_keyboard_map = {"a":"b"} Is this working for 'a'? 2) alert("ৃ") is this write out this character? Please try it with external and internal script as well 3) var str = "র্" ; alert(str) this is the last test Actually I am interested whether the parsing of the JS or the "map" (JSON literal) does not work.
Adam Roben (:aroben)
Comment 9 2010-06-29 12:34:40 PDT
The attached test case seems to work fine for me in Safari 5 on 32-bit Windows XP
S M Mahbub Murshed
Comment 10 2010-06-29 17:05:05 PDT
The results for the tests: 1. javascript:alert(navigator.userAgent) returns: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/533.16 (KHTML, like Gecko) Version/5.0 Safari 533.16 Running Windows XP SP3 32 bit. Asian language support installed. Image attached. 2. var unicode_keyboard_map = {"j":"a"} This works for j and returns "a". Sample attached. 3. alert("ক") is this write out this character? Does not work. Shows blank message box. I tried both typing in address bar and in the script. (attached). 4. var str = "র্"; alert(str); Does not work either.
S M Mahbub Murshed
Comment 11 2010-06-29 17:06:05 PDT
Created attachment 60072 [details] Modified test case
Alexey Proskuryakov
Comment 12 2010-06-29 17:28:12 PDT
> var CUni = unicode_keyboard_map[C]; > CUni is null here. Did you confirm that with something like alert(CUni.charCodeAt(0))? This sounds very much like a text drawing bug under Windows XP so far, not a JavaScript one.
S M Mahbub Murshed
Comment 13 2010-06-29 18:27:50 PDT
Alexey, You are absolutely right! The alert(CUni.charCodeAt(0)) shows correct decimal value for the character (2453 for \u0995). After I changed the default font (Arial) to a Bengali font the characters started to show up correctly. However the alert message boxes are still showing blank. Moreover, alert shows few characters (for example it shows equivalent Bengali digits for 0-9) not all.
Note You need to log in before you can comment on or make changes to this bug.