"Stefan Ziel" stefan.ziel@terra.com.br wrote:
Ignore characterset bit for symbol fonts
- if(!TranslateCharsetInfo((DWORD*)(INT_PTR)lf.lfCharSet, &csi, TCI_SRCCHARSET)) {
- if (lf.lfCharSet == SYMBOL_CHARSET){
/* codepage for symbol is not definied -> ignore it */
csi.fs.fsCsb[0] = 0;
This patch is obviously wrong, TranslateCharsetInfo does handle SYMBOL_CHARSET, and code page for symbol *is* defined. In any case the first thing to do is write a test case.
This patch is obviously wrong
may be, but the handling of symbol fonts in wine also is ;)
TranslateCharsetInfo does handle SYMBOL_CHARSET, and code page for symbol *is* defined.
its the charset-bits in fontinfo structure where most symbol fonts set bit 31 (reserved for OEM in original documentation). for wine setting bit 31 is required and symbol fonts with bit 31 not set are discarded. Windows does not mind about that so some fonts, capella's score fonts for example, use other bits.
In any case the first thing to do is write a test case.
too much effort for me at the moment. I'm not a c/c++ programmer and capella works fine with the patch - that's what i need. from now on i will spend my spare time writing sheet music and not test cases ;)
greets stefan
Am Sonntag, den 05.10.2008, 14:47 +0900 schrieb Dmitry Timoshkov:
"Stefan Ziel" stefan.ziel@terra.com.br wrote:
Ignore characterset bit for symbol fonts
- if(!TranslateCharsetInfo((DWORD*)(INT_PTR)lf.lfCharSet, &csi, TCI_SRCCHARSET)) {
- if (lf.lfCharSet == SYMBOL_CHARSET){
/* codepage for symbol is not definied -> ignore it */
csi.fs.fsCsb[0] = 0;
This patch is obviously wrong, TranslateCharsetInfo does handle SYMBOL_CHARSET, and code page for symbol *is* defined. In any case the first thing to do is write a test case.
"Stefan Ziel" stefan.ziel@terra.com.br wrote:
This patch is obviously wrong
may be, but the handling of symbol fonts in wine also is ;)
TranslateCharsetInfo does handle SYMBOL_CHARSET, and code page for symbol *is* defined.
its the charset-bits in fontinfo structure where most symbol fonts set bit 31 (reserved for OEM in original documentation). for wine setting bit 31 is required and symbol fonts with bit 31 not set are discarded. Windows does not mind about that so some fonts, capella's score fonts for example, use other bits.
In any case the first thing to do is write a test case.
too much effort for me at the moment. I'm not a c/c++ programmer and capella works fine with the patch - that's what i need. from now on i will spend my spare time writing sheet music and not test cases ;)
You still should be able to open a bug report and provide all the details of the problem you were trying to fix, if the demo of the application you are using available, and attach your patch there.
see:
http://bugs.winehq.org/show_bug.cgi?id=12377
Am Dienstag, den 07.10.2008, 09:17 +0900 schrieb Dmitry Timoshkov:
"Stefan Ziel" stefan.ziel@terra.com.br wrote:
This patch is obviously wrong
may be, but the handling of symbol fonts in wine also is ;)
TranslateCharsetInfo does handle SYMBOL_CHARSET, and code page for symbol *is* defined.
its the charset-bits in fontinfo structure where most symbol fonts set bit 31 (reserved for OEM in original documentation). for wine setting bit 31 is required and symbol fonts with bit 31 not set are discarded. Windows does not mind about that so some fonts, capella's score fonts for example, use other bits.
In any case the first thing to do is write a test case.
too much effort for me at the moment. I'm not a c/c++ programmer and capella works fine with the patch - that's what i need. from now on i will spend my spare time writing sheet music and not test cases ;)
You still should be able to open a bug report and provide all the details of the problem you were trying to fix, if the demo of the application you are using available, and attach your patch there.