View Issue Details

IDProjectCategoryView StatusLast Update
00315552.x IDE BugsCode EditorPublic2020-01-13 16:24
ReporterDanAssigned ToSteven Campbell 
PriorityMediumSeverityC - GeneralReproducibility100%
Status ResolvedResolutionFixed 
Platform-OSWindows 10OS VersionPro x64
Product Version2.2.5 
Target Version2.3.0Fixed in Version2.3.0 
Summary0031555: Code Editor: Typing certain characters when using IME can corrupt other double-width characters in your scripts
DescriptionAs you can see from the attached sample, within the Code Editor typing certain characters can corrupt double-width characters in your scripts if you happen to be using IME at the time.

The issue only appears to reproduce once per IDE session, but is 100% every time you start GMS2 and follow the repro steps. Restarting GMS2 fixes the issue (you're not permanently breaking your comments, etc.) from what I can see.

It doesn't matter about the other content in the code editor - you can remove everything but the Chinese characters from my sample and it will still reproduce the issue as soon as you do step 4.
Steps To Reproduce0. Install Window's Chinese (Simplified, China) language pack. (You can leave English set as active for now.)
1. Start GMS2 and import the attached sample.
2. Open the object's Create event. Place your cursor anywhere after the existing Chinese characters (on the same line or add blank lines below).
3. Enable Chinese in your system tray language controls.
4. Press Shift and - as if to type the underscore character.
5. Observe this has drawn a larger-than-English strikethrough character and also corrupted the other Chinese text already written above.
Repro: 100%
Additional InformationOur change to fix font corruption in 2.2.5 has nothing to do with this issue, and this issue has been present for quite a while (possibly always). The previous ticket was being mistakenly bundled-in because at the time we did not have enough detailed info to reproduce.
TagsNo tags attached.
2.x IDE Found In2.2.5.481
2.x Runtime Found In2.2.5.378
2.x IDE Verified In
2.x Runtime Verified In

Activities

Dan

2019-12-31 09:18

Adminstrator  

testIMEFontIssue.yyz (17,605 bytes)
After.png (7,219 bytes)
After.png (7,219 bytes)
Before.png (12,242 bytes)
Before.png (12,242 bytes)

Steven Campbell

2020-01-10 12:24

Manager   ~0065265

Last edited: 2020-01-13 16:23

View 2 revisions

This is due to the specific character not being in the current font, so it's adding it from a replacement font.
However, its glyph size differs from the existing font, so it's recalculated it for the new glyph, but not re-rendered the existing ones - so they're all offset slightly on the texture maps.