On 08/28/2010 02:12 PM, Alexandre Goujon wrote:
I know that libs/wine/c_1361.c is generated ("DO NOT EDIT!!"). However (union cptable)cptable_1361.dbcs->lead_bytes needs to be modified according tests [...] diff --git a/libs/wine/c_1361.c b/libs/wine/c_1361.c index b424cb1..50d2c47 100644 --- a/libs/wine/c_1361.c +++ b/libs/wine/c_1361.c @@ -8902,6 +8902,6 @@ const struct dbcs_table cptable_1361 = uni2cp_low, uni2cp_high, {
0x84, 0xd3, 0xd9, 0xde, 0xe0, 0xf9, 0x00, 0x00
};0x81, 0xd3, 0xd8, 0xde, 0xe0, 0xf9, 0x00, 0x00 }
May I ask some guidance to make this [1] patch accepted ? Tests prove that the values above needs to be modified. Actually, I don't know if "uni2cp_high" is generated from the Internet or cpmap.pl (maybe both) Anyway, I don't understand perl.
May http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT be wrong ? Or may Windows doesn't fully comply with unicode ?
Thanks --- [1] : http://source.winehq.org/patches/data/65550
GOUJON Alexandre ale.goujon@gmail.com wrote:
--- a/libs/wine/c_1361.c +++ b/libs/wine/c_1361.c @@ -8902,6 +8902,6 @@ const struct dbcs_table cptable_1361 = uni2cp_low, uni2cp_high, {
0x84, 0xd3, 0xd9, 0xde, 0xe0, 0xf9, 0x00, 0x00
};0x81, 0xd3, 0xd8, 0xde, 0xe0, 0xf9, 0x00, 0x00 }
May I ask some guidance to make this [1] patch accepted ? Tests prove that the values above needs to be modified. Actually, I don't know if "uni2cp_high" is generated from the Internet or cpmap.pl (maybe both) Anyway, I don't understand perl.
May http://www.unicode.org/Public/MAPPINGS/OBSOLETE/EASTASIA/KSC/JOHAB.TXT be wrong ? Or may Windows doesn't fully comply with unicode ?
Windows uses an older Unicode specification, that's pretty normal that unicode.org and Windows data differ in some places. There is no need to change the mapping unless there is an application that depends on it.
On 08/31/2010 11:20 AM, Dmitry Timoshkov wrote:
Windows uses an older Unicode specification, that's pretty normal that unicode.org and Windows data differ in some places. There is no need to change the mapping unless there is an application that depends on it
Thanks for your answer. You've done great things on wine for a long time and fixed plenty of bugs (again, thanks) but ... how can you say that (the last sentence) ? I don't want to offense you, I'm no one, and I don't say that just to be mean .. but there won't be any problem until an application rely on it. And that's wine is for : provide an implementation of win32 API, mimic windows behavior (and its bugs).
I can't help wine with crypto/gdi/d3d stuff so I'm looking for todo_wine I can solve and I can fix this one. As always, I understood what was wrong and proposed a patch to 1) remove todo_wine (statistically, wine is now more windows-compliant ) 2) correct wine behavior 3) prevent (maybe close) bugs
Why do you want me not to fix a potential bug ?
Anyway, I'll try to read cpmap.pl and try to understand what I can do with it.
I'm open-minded and ready to discuss / understand and change if needed.
GOUJON Alexandre ale.goujon@gmail.com wrote:
You've done great things on wine for a long time and fixed plenty of bugs (again, thanks) but ... how can you say that (the last sentence) ? I don't want to offense you, I'm no one, and I don't say that just to be mean .. but there won't be any problem until an application rely on it. And that's wine is for : provide an implementation of win32 API, mimic windows behavior (and its bugs).
Wine's aim is to run Windows applications, not to implement everything Windows has. Therefore Wine only implements things the Windows applications depend upon. There are hundreds (if not thousands) APIs, or things that differ in Wine in comparoson to Windows. That only starts to matter once there is a Windows application that doesn't run due to that. Spending time fixing differencies nobody cares about is a time loss.
On 08/31/2010 12:23 PM, Dmitry Timoshkov wrote:
Wine's aim is to run Windows applications, not to implement everything Windows has.
I disagree about that but it doesn't matter after all.
Spending time fixing differencies nobody cares about is a time loss
You're probably right but what about if the solution is known and working ? I don't ask you to waste your time fixing useless things (that's what I seems to do) but just help me to translate a single line change in a C file into a (probably single) perl line. [1] After that, all msvcrt:string tests (1415 exactly) will pass and I won't have to change these locale files again.
--- [1] You're not paid for that so if anyone could help me on it, this topic will simply end .. with a better Wine.
Is the attached patch well formed ? Can someone give it a try ? I don't want to run it, I fear it'll download all tables : my 3G Internet connection is limited to 20 kB/s now (I downloaded more than 5 GB but no one cares)
"my 3G Internet
connection is limited to 20 kB/s now (I downloaded more than 5 GB but no one cares)
" HAHA!!!
Don't you have a starbucks near by??? They do free wifi now!
On Tue, Aug 31, 2010 at 3:58 AM, GOUJON Alexandre ale.goujon@gmail.com wrote:
Is the attached patch well formed ? Can someone give it a try ? I don't want to run it, I fear it'll download all tables : my 3G Internet connection is limited to 20 kB/s now (I downloaded more than 5 GB but no one cares)
On 08/31/2010 04:58 AM, GOUJON Alexandre wrote:
Is the attached patch well formed ?
- if( $codepage == 1361 ) my $lb_ranges = ( 0x81, 0xd3, 0xd8, 0xde, 0xe0, 0xf9, 0x00, 0x00 );
- else my $lb_ranges = get_lb_ranges();
No, it's wrong. Perl requires curly braces for if(){}else{}.
Vitaliy.
On 09/01/2010 04:54 AM, Vitaliy Margolen wrote:
On 08/31/2010 04:58 AM, GOUJON Alexandre wrote:
Is the attached patch well formed ?
- if( $codepage == 1361 ) my $lb_ranges = ( 0x81, 0xd3, 0xd8,
0xde, 0xe0, 0xf9, 0x00, 0x00 );
- else my $lb_ranges = get_lb_ranges();
No, it's wrong. Perl requires curly braces for if(){}else{}.
Thank you but it was still not working, so I read a perl tutorial ($->@ and moved 'my' above ). Now it works. I just sent the patch.
Thanks for your help !