[Bug 55529] New: Text in SRPG Studio games ends with a tofu/missing character glyph.
https://bugs.winehq.org/show_bug.cgi?id=55529 Bug ID: 55529 Summary: Text in SRPG Studio games ends with a tofu/missing character glyph. Product: Wine Version: 8.15 Hardware: x86-64 OS: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs(a)winehq.org Reporter: rjtulloh(a)gmail.com Distribution: --- All text (excluding some menu text) in SRPG Studio games ends with a tofu/missing character glyph. I tested the following games/projects: - Vestaria Saga (Steam Version) - Vestaria Saga 2 - Clarent Saga Tactics (https://davidnguyen.itch.io/clarent-saga-tactics) - Sanctaea Chronicles (https://forums.serenesforest.net/index.php?/topic/85032-sanctaea-chronicles-...) I first observed this issue in Wine 7.14. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #1 from Rafał Mużyło <galtgendo(a)o2.pl> --- More details needed.
From that selection, semi-randomly chosen CST seems to work just fine throughout the tutorial battle.
-- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 Jeff Smith <whydoubt(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |whydoubt(a)gmail.com --- Comment #2 from Jeff Smith <whydoubt(a)gmail.com> --- I can reproduce: When I start CST, and click Start, it brings up a difficulty selection box. I can see the tofu at the end of the descriptive text. Now, if I run with the dwrite debug channel, and grep for dwritefactory_CreateTextLayout, I see trailing nulls in the strings where the tofu appears. So it would seem that this function may need to better handle trailing nulls. I'm unclear if this is a regression. Did this appear correctly in earlier versions of Wine, and if so can you specify such a version of Wine? -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #3 from Rafał Mużyło <galtgendo(a)o2.pl> --- Odd. What I see there is a square with a cross in it. That might be just as well 'works as intended' or at most a missing glyph box for what ever glyph was intended as a paragraph terminator... -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #4 from Rafał Mużyło <galtgendo(a)o2.pl> --- ...then again, alternative take: perhaps on Windows some of text display functions treat a null in the string as a hard stop, while wine is trying to deal with embedded nulls ? -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #5 from Robert T <rjtulloh(a)gmail.com> --- (In reply to Jeff Smith from comment #2)
I can reproduce: When I start CST, and click Start, it brings up a difficulty selection box. I can see the tofu at the end of the descriptive text.
Now, if I run with the dwrite debug channel, and grep for dwritefactory_CreateTextLayout, I see trailing nulls in the strings where the tofu appears. So it would seem that this function may need to better handle trailing nulls.
I'm unclear if this is a regression. Did this appear correctly in earlier versions of Wine, and if so can you specify such a version of Wine?
I tested with these versions: * 8.15 (Tofu glyphs appear) * 8.0 (Tofu glyphs appear) * 7.22 (Tofu glyphs appear) * 7.14 (Tofu glyphs appear) * 7.13 (Tofu glyphs don't appear) * 7.12 (Tofu glyphs don't appear) * 7.11 (Tofu glyphs don't appear) * 7.10 (Tofu glyphs don't appear) * 7.6 (Tofu glyphs don't appear) 7.6 is the oldest available version in the wine-builds for Ubuntu that I can check easily. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #6 from Robert T <rjtulloh(a)gmail.com> --- Created attachment 75091 --> https://bugs.winehq.org/attachment.cgi?id=75091 Screenshots of various SRPG Studio games in Wine and Windows. I've attached a set of screenshots from the games I've tested, with the same text in both Wine and Windows. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #7 from Robert T <rjtulloh(a)gmail.com> --- I should clarify: when I say "tofu glyph," I mean "missing character glyph." I thought this shorthand would be well understood. Apologies if it wasn't. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #8 from Jeff Smith <whydoubt(a)gmail.com> --- Thank you, knowing it was between 7.13 and 7.14 helped me determine the likely regression commit. I did not do a full bisect, but reverting it does fix the problem. commit 5259c1a1dcbbdeec8d60548194bbb6aed9c2f671 Author: Nikolay Sivov <nsivov(a)codeweavers.com> Date: Mon Jul 25 14:27:41 2022 +0300 dwrite: Use correct ranges to set DWRITE_SCRIPT_SHAPES_NO_VISUAL. Also note that the revert does not apply cleanly, and a better fix (needs further testing) may be --- a/dlls/dwrite/analyzer.c +++ b/dlls/dwrite/analyzer.c @@ -658,7 +658,7 @@ static DWRITE_SCRIPT_ANALYSIS get_char_sa(UINT32 c) sa.script = get_char_script(c); sa.shapes = DWRITE_SCRIPT_SHAPES_DEFAULT; - if ((c >= 0x0001 && c <= 0x001f) /* C0 controls */ + if ((c <= 0x001f) /* C0 controls */ || (c >= 0x007f && c <= 0x009f) /* DELETE, C1 controls */ || (c == 0x00ad) /* SOFT HYPHEN */ || (c >= 0x200b && c <= 0x200f) /* ZWSP, ZWNJ, ZWJ, LRM, RLM */ -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 --- Comment #9 from Jeff Smith <whydoubt(a)gmail.com> --- FYI, https://gitlab.winehq.org/wine/wine/-/merge_requests/3744 has been merged, which appears to fix this bug. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 Robert T <rjtulloh(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #10 from Robert T <rjtulloh(a)gmail.com> --- I no longer see the tofu blocks in wine 8.16. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 Nikolay Sivov <bunglehead(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Fixed by SHA1| |c93cfb4aad8c1ede7a767d30779 | |1767b8294dbeb -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=55529 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #11 from Alexandre Julliard <julliard(a)winehq.org> --- Closing bugs fixed in 8.17. -- Do not reply to this email, post in Bugzilla using the above URL to reply. You are receiving this mail because: You are watching all bug changes.
participants (1)
-
WineHQ Bugzilla