https://bugs.winehq.org/show_bug.cgi?id=38060
Bug ID: 38060 Summary: Apps can't load custom fonts during runtime Product: Wine Version: unspecified Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: gdi32 Assignee: wine-bugs@winehq.org Reporter: masterofquebec@rocksplash.com Distribution: Debian
Created attachment 50700 --> https://bugs.winehq.org/attachment.cgi?id=50700 WINEDEBUG=warn+all,fixme+all MTASA
Calls to AddFontResourceEx seems to fails in various games.
San Andreas Multiplayer: warn:font:new_ft_face Unable to load font "/home/samuel/.wine/dosdevices/c:/Program Files/Rockstar Games/GTA San Andreas/gtaweap3.ttf"/(nil) err = 2
Multi Theft Auto: warn:font:new_ft_face Unable to load font "/home/samuel/.wine/dosdevices/c:/Program Files/MTA San Andreas 1.4/MTA/cgui/pricedown.ttf"/(nil) err = 2
In both cases the fonts exist and seems to be valid.
What is error 2?
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #1 from Sam masterofquebec@rocksplash.com --- Created attachment 50701 --> https://bugs.winehq.org/attachment.cgi?id=50701 WINEDEBUG=warn+all,fixme+all SA-MP
https://bugs.winehq.org/show_bug.cgi?id=38060
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Component|gdi32 |-unknown Resolution|--- |INVALID
--- Comment #2 from Dmitry Timoshkov dmitry@baikal.ru --- You are looking at the wrong part of the log.
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #3 from Sam masterofquebec@rocksplash.com --- Where should I be looking?
https://bugs.winehq.org/show_bug.cgi?id=38060
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #4 from Anastasius Focht focht@gmx.net --- Hello Sam,
just for the curious...
Where did you get the idea from to use 'WINEDEBUG=warn+all,fixme+all'? WineHQ? Appdb? Other Website? Google?
Such logs are not really useful at all and those error/warn messages are by design = expected.
Regards
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #5 from Sam masterofquebec@rocksplash.com --- Tought it could be usefull. To be honest I have no idea were to look. The only thing I know are the following:
SA-MP runs quite fine except for the killbox wich use gtaweap3.ttf. Seems I'm not the only one with this problem (eg: https://appdb.winehq.org/objectManager.php?sClass=version&iId=18213&...)
MTA does not start saying it could not load "pricedown.ttf".
https://bugs.winehq.org/show_bug.cgi?id=38060
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Apps can't load custom |San Andreas Multiplayer |fonts during runtime |fails to load Kill-list | |font 'gtaweap3.ttf'
--- Comment #6 from Anastasius Focht focht@gmx.net --- Hello Sam,
I found this website mentioning the font and providing a download:
http://crazybobs.wikia.com/wiki/Missing_Kill-list_Font
To test if Wine is able to load/recognize the font you can simply put it in ~/.fonts (one of the folders used for picking up fonts) and use Wine's builtin 'wordpad' application.
Start 'wordpad'. Select the font in question ('GTAWEAPON3'), increase the font size to maximum (72) and start typing. You should see glyphs (pistols and other stuff).
For diagnosis you could also run:
WINEDEBUG=+font wine wordpad >>log.txt 2>&1
(alternatively with the app itself)
Regards
https://bugs.winehq.org/show_bug.cgi?id=38060
Sam masterofquebec@rocksplash.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|INVALID |---
--- Comment #7 from Sam masterofquebec@rocksplash.com --- Thanks for the reply.
I just tested using wordpad and Wine do regonize the fonts (gtaweap3.ttf, pricedown.ttf, sabankgothic.ttf, saheader.ttf, sagothic.ttf...).
However, even when I put the font in ~/.fonts SA-MP won't load/use it (attached a screenshot).
Same thing goes with MTA:SA.
I don't know if it can help but I found the line responsible for loading the font in MTA:SA (CGraphics.cpp:1087), seems to work fine in Windows. https://code.google.com/p/mtasa-blue/source/browse/trunk/MTA10/core/CGraphic...
https://bugs.winehq.org/show_bug.cgi?id=38060
Sam masterofquebec@rocksplash.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #50700|0 |1 is obsolete| | Attachment #50701|0 |1 is obsolete| |
--- Comment #8 from Sam masterofquebec@rocksplash.com --- Created attachment 50703 --> https://bugs.winehq.org/attachment.cgi?id=50703 SA-MP and MTA:SA WINEDEBUG=+font
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #9 from Sam masterofquebec@rocksplash.com --- Created attachment 50704 --> https://bugs.winehq.org/attachment.cgi?id=50704 MTA:SA error message
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #10 from Sam masterofquebec@rocksplash.com --- Created attachment 50705 --> https://bugs.winehq.org/attachment.cgi?id=50705 SA-MP killbox
https://bugs.winehq.org/show_bug.cgi?id=38060
Dmitry Timoshkov dmitry@baikal.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |INVALID
--- Comment #11 from Dmitry Timoshkov dmitry@baikal.ru --- (In reply to Sam from comment #5)
Tought it could be usefull. To be honest I have no idea were to look. The only thing I know are the following:
SA-MP runs quite fine except for the killbox wich use gtaweap3.ttf. Seems I'm not the only one with this problem (eg: https://appdb.winehq.org/objectManager. php?sClass=version&iId=18213&iTestingId=70531&bShowAll=true)
MTA does not start saying it could not load "pricedown.ttf".
You are putting the font in the wrong directory. For end-user support please use forums.
https://bugs.winehq.org/show_bug.cgi?id=38060
Sam masterofquebec@rocksplash.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |UNCONFIRMED Resolution|INVALID |---
--- Comment #12 from Sam masterofquebec@rocksplash.com --- (In reply to Dmitry Timoshkov from comment #11)
(In reply to Sam from comment #5)
Tought it could be usefull. To be honest I have no idea were to look. The only thing I know are the following:
SA-MP runs quite fine except for the killbox wich use gtaweap3.ttf. Seems I'm not the only one with this problem (eg: https://appdb.winehq.org/objectManager. php?sClass=version&iId=18213&iTestingId=70531&bShowAll=true)
MTA does not start saying it could not load "pricedown.ttf".
You are putting the font in the wrong directory. For end-user support please use forums.
It seems to me that THE FONTS ARE IN THE RIGHT DIRECTORY according to the software source and Wine logs.
MTA:SA **REQUIRE** fonts to be in the following directory (see MTA:SA source, CGraphics.cpp:1087):
c:/Program Files/MTA San Andreas 1.4/MTA/cgui
This is exactly where the fonts are and this is also where the fonts were extracted during the setup.
Wine even attempt to load them from the very same location:
warn:font:new_ft_face Unable to load font "/home/samuel/.wine/dosdevices/c:/Program Files/MTA San Andreas 1.4/MTA/cgui/pricedown.ttf"/(nil) err = 2
I'm changing the status to "unconfirmed" once again as I'm pretty sure this is a bug.
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #13 from Sam masterofquebec@rocksplash.com --- Looks like error 2 is Unknown File Format (fterrdef.h).
It seems that FT_Open_Face can't find a driver for the file. This is strange as Freetype has no problem loading the same font during init_font_list().
WineEngAddFontResourceEx->AddFontToList->new_ft_face->FT_New_Face->FT_Open_Face
https://bugs.winehq.org/show_bug.cgi?id=38060
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download URL| |https://mtasa-resources.goo | |glecode.com/files/mtasa-1.3 | |.4.exe Version|unspecified |1.7.36
--- Comment #14 from Anastasius Focht focht@gmx.net --- Hello Sam,
you provided selected information based on your own perception what might be relevant to the problem so far. This way you can't expect much help.
You must provide *full* trace logs from the apps to have a look at - otherwise it remains guesswork here.
Please generate a full trace log with one of the apps in question:
1) make sure no lingering processes: 'wineserver -k' 2) "preboot/warmup" the prefix with a builtin ('wine notepad' in other terminal) 3) run the app as follows:
$ WINEDEBUG=+tid,+seh,+relay,+font wine ./foo.exe >>log.txt 2>&1
4) compress and attach the log or upload it elsewhere if too large. 5) profit!
Regards
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #15 from Sam masterofquebec@rocksplash.com --- Created attachment 50727 --> https://bugs.winehq.org/attachment.cgi?id=50727 Logs, test app and font file stat
Think I discovered the cause of the problem.
The "inode64" mount option seems to be enabled by default on XFS file systems under Debian Jessie.
The inode of the pricedown.ttf file is 4298131781 which is out of the 32-bit integer range.
Modifying the inode to one in the 32-bit range seems to fix the problem (eg: 76360477).
If I'm not mistaken, a fix for the 32-bit Wine builds would be to replace calls to stat by their 64-bit version (stat->stat64, readdir->readdir64...). Mainly in dlls/gdi32/freetype.c.
I attached logs, stat info for the font file and the app I used for testing.
https://bugs.winehq.org/show_bug.cgi?id=38060
Sam masterofquebec@rocksplash.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |gdi32 Summary|San Andreas Multiplayer |Can't load fonts if their |fails to load Kill-list |inode exceed the 32-bit |font 'gtaweap3.ttf' |range
https://bugs.winehq.org/show_bug.cgi?id=38060
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Version|1.7.36 |1.6.2
--- Comment #16 from Anastasius Focht focht@gmx.net --- Hello Sam,
looks more like your 32-bit Wine wasn't built with large filesystems support. You need check your configure/build logs specifically for '_FILE_OFFSET_BITS' (which is obviously not 64 on your 32-bit build).
Also the example shows a comment, stating Wine 1.6.2 is used? Setting version field accordingly.
Regards
https://bugs.winehq.org/show_bug.cgi?id=38060
--- Comment #17 from Sam masterofquebec@rocksplash.com --- (In reply to Anastasius Focht from comment #16)
Hello Sam,
looks more like your 32-bit Wine wasn't built with large filesystems support. You need check your configure/build logs specifically for '_FILE_OFFSET_BITS' (which is obviously not 64 on your 32-bit build).
Also the example shows a comment, stating Wine 1.6.2 is used? Setting version field accordingly.
Regards
Thanks a lot for the info.
As I currently use the default Debian Jessie build I will have to make my own. It should be done during the next few days. I will make sure FILE_OFFSET_BITS=64 and post the results.
https://bugs.winehq.org/show_bug.cgi?id=38060
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |super_man@post.com
--- Comment #18 from super_man@post.com --- It's been months already since last reply.
https://bugs.winehq.org/show_bug.cgi?id=38060
super_man@post.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |masterofquebec@rocksplash.c | |om
https://bugs.winehq.org/show_bug.cgi?id=38060
winetest@luukku.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winetest@luukku.com
https://bugs.winehq.org/show_bug.cgi?id=38060
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |ABANDONED
--- Comment #19 from Nikolay Sivov bunglehead@gmail.com --- I'm going to close this one. Relevant code changed enough over the years that we don't use FT_Open_Face() anymore. As usual, please create another report if you have any problems.
https://bugs.winehq.org/show_bug.cgi?id=38060
Gijs Vermeulen gijsvrm@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #20 from Gijs Vermeulen gijsvrm@gmail.com --- Closing ABANDONED.