Bug 167740 - Korean input duplication bug in Calc — last syllable repeats (e.g., “민기야” becomes “민기야야”)
Summary: Korean input duplication bug in Calc — last syllable repeats (e.g., “민기야” bec...
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
25.2.5.2 release
Hardware: All Windows (All)
: medium normal
Assignee: Jonathan Clark
URL:
Whiteboard: target:26.2.0 target:25.8.1 target:25...
Keywords: bibisected, bisected, regression
Depends on:
Blocks: CJK IME
  Show dependency treegraph
 
Reported: 2025-07-31 05:21 UTC by soohee kim
Modified: 2025-08-08 10:05 UTC (History)
5 users (show)

See Also:
Crash report or crash signature:


Attachments
Korean input duplication bug is reproduced on the LibreOffice 25.8 RC2 (51.88 KB, image/png)
2025-08-01 08:43 UTC, DaeHyun Sung
Details

Note You need to log in before you can comment on or make changes to this bug.
Description soohee kim 2025-07-31 05:21:03 UTC
Description:
Steps to reproduce:
1. Open LibreOffice Calc
2. In any cell, type a Korean word such as “민기야”
3. Press [Enter] or [Space] right after typing

Expected result:
The cell shows “민기야”

Actual result:
The cell shows “민기야야” — the last syllable is duplicated

This bug happens with:
- Windows 10/11
- Microsoft IME (Korean input)
- LibreOffice version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 4; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Vulkan; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: CL threaded

Notes:
- This issue has existed for many years and makes Calc nearly unusable for Korean users.
- Happens only with Korean input (IME), not with English.
- Reproduced consistently.


Steps to Reproduce:
1. Open LibreOffice Calc
2. Click on any cell
3. Type the Korean word “민기야”
4. Press [Enter] or [Space]


Actual Results:
“민기야야” is shown — the last syllable is duplicated.


Expected Results:
The cell should contain only “민기야”



Reproducible: Always


User Profile Reset: No

Additional Info:
This issue occurs on Windows 10 with Microsoft Korean IME.  
LibreOffice version: 25.2.5.2 (x86)  
Locale: ko-KR  
No extensions installed.  
Tested with both new and existing Calc files.  
Bug reproduces 100% of the time with Korean input.
Comment 1 Julien Nabet 2025-07-31 08:47:33 UTC
DaeHyun/Jonathan: thought you might be interested in this one.
Comment 2 Jonathan Clark 2025-07-31 18:34:49 UTC
On Windows 11 using the Microsoft IME (old and new), I couldn't reproduce the bug in the following versions:

Version: 25.2.4.3 (X86_64) / LibreOffice Community
Build ID: 33e196637044ead23f5c3226cde09b47731f7e27
CPU threads: 32; OS: Windows 11 X86_64 (10.0 build 26100); UI render: Skia/Raster; VCL: win
Locale: ko-KR (en_US); UI: en-US
Calc: CL threaded

Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 32; OS: Windows 11 X86_64 (10.0 build 26100); UI render: Skia/Raster; VCL: win
Locale: ko-KR (en_US); UI: ko-KR
Calc: CL threaded

For completeness, it also doesn't happen on Linux with fcitx5:

Version: 26.2.0.0.alpha0+ (X86_64) / LibreOffice Community
Build ID: a4dd0b539330381d055452c6e14ecce7bf804be2
CPU threads: 32; OS: Linux 6.14; UI render: default; VCL: kf6 (cairo+wayland)
Locale: en-CA (en_CA.UTF-8); UI: en-US
Calc: threaded


If other people want to give it a try, you can write 민기야 by typing ALSRLDI, assuming you have a QWERTY keyboard and Korean IME set to Hangul mode.
Comment 3 Saburo 2025-08-01 05:25:04 UTC
reproduce
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 4; OS: Windows 10 X86_64 (10.0 build 19045); UI render: default; VCL: win
Locale: ja-JP (ja_JP); UI: en-US
Calc: CL threaded

not reproduce
Version: 25.2.4.3 (X86_64) / LibreOffice Community
Build ID: 33e196637044ead23f5c3226cde09b47731f7e27
CPU threads: 4; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Vulkan; VCL: win
Locale: ja-JP (ja_JP); UI: ja-JP
Calc: CL threaded

regression
The same problem occurs in Writer, Impress, and Draw.

bibisected with win64-25.8

commit 08a3854ba355c511a8098b64a8346dda614ea630
author	Jonathan Clark <jonathan@libreoffice.org>	Tue May 27 05:25:50 2025 -0600

tdf#155158 vcl: Fix IME composition not ending on end comp message
Comment 4 DaeHyun Sung 2025-08-01 07:43:39 UTC
Hello, I'm DaeHyun Sung, from South Korea.

I'm interesting the issue.
I can reproduce the bug in the following versions:
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 16; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Raster; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: threaded

This is reproduce the bug demo video.
https://youtu.be/28_AjCmlg8M

Also,The bug occurs in Writer, Impress, and Draw.

Writer
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 16; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Raster; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: threaded

Impress
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 16; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Raster; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: threaded

Draw
Version: 25.2.5.2 (X86_64) / LibreOffice Community
Build ID: 03d19516eb2e1dd5d4ccd751a0d6f35f35e08022
CPU threads: 16; OS: Windows 10 X86_64 (10.0 build 19045); UI render: Skia/Raster; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: threaded
Comment 5 DaeHyun Sung 2025-08-01 08:43:50 UTC
Created attachment 202122 [details]
Korean input duplication bug is reproduced on the LibreOffice 25.8 RC2

Korean input duplication bug is reproduced on the LibreOffice 25.8 RC2.

Version: 25.8.0.2 (X86_64)
Build ID: 80a8bc2ef75d415a197e282da0ebf917315d5e24
CPU threads: 16; OS: Windows 10 X86_64 (build 19045); UI render: Skia/Raster; VCL: win
Locale: ko-KR (ko_KR); UI: ko-KR
Calc: threaded
Comment 6 林博仁 Buo-ren Lin 2025-08-01 09:29:40 UTC
This bug is not reproduced using the Microsoft New Zhuyin Chinese IME on 25.2.5.2 and 26.2.0.0.alpha+(7f48683) on Windows 10.

The input sequence used for bug reproduction is:

測試中(h, k, 4, g, 4, 5, j, /, and SPACE on a QWERTY keyboard)
Comment 7 Jonathan Clark 2025-08-01 10:41:08 UTC
Per comment 3, this regression is in Windows-specific code, so I'm narrowing the platform. So far I've only seen this issue with the Microsoft Korean IME on Windows 10, specifically. It doesn't happen with the Windows 11 version, or with other language IMEs I've tested.
Comment 8 Commit Notification 2025-08-01 19:30:19 UTC
Jonathan Clark committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/commit/af0da68b4176aaf6d2f6faed66446e5638f41c80

tdf#167740 vcl: Fix Win IME inserting stale composition after dismissal

It will be available in 26.2.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 9 Commit Notification 2025-08-07 11:51:29 UTC
Jonathan Clark committed a patch related to this issue.
It has been pushed to "libreoffice-25-8":

https://git.libreoffice.org/core/commit/b5228a1880cdb4774deb2156e72890711a02b4bc

tdf#167740 vcl: Fix Win IME inserting stale composition after dismissal

It will be available in 25.8.1.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 10 Commit Notification 2025-08-07 15:51:39 UTC
Jonathan Clark committed a patch related to this issue.
It has been pushed to "libreoffice-25-2":

https://git.libreoffice.org/core/commit/ab32cbb059fb454f419a92c6f9ef85f187e48928

tdf#167740 vcl: Fix Win IME inserting stale composition after dismissal

It will be available in 25.2.6.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 11 Commit Notification 2025-08-08 10:05:50 UTC
Jonathan Clark committed a patch related to this issue.
It has been pushed to "libreoffice-25-8-0":

https://git.libreoffice.org/core/commit/285e2f93be83ca7c5de73dc52e06d78dc72f9246

tdf#167740 vcl: Fix Win IME inserting stale composition after dismissal

It will be available in 25.8.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.