NVDA crashes when Japanese Microsoft Office IME 2010 is default input language #3064

Closed
nvaccessAuto opened this Issue Mar 9, 2013 · 15 comments

2 participants

@nvaccessAuto

Reported by nishimotz on 2013-03-09 02:37
NVDA crashes when Japanese Microsoft Office IME 2010 (comes with Microsoft Office 2010) is default input language.

The procedure to reproduce is as follows:

  • Windows 7 64bit Ultimate (English interface)
  • US keyboard
  • NVDA snapshot main 5932 installed

  • Open 'control panel' and change the setting:

    1. Choose: Change keyboard or other input methods
    2. Go to tab: Keyboards and language
    3. Choose: Change keyboards
    4. Go to tab: General
    5. Choose: Default input language
    6. Choose: Japanese (Japan) - Microsoft Office IME 2010
  • Launch installed NVDA (with English interface)

  • Type Windows-key, 'notepad', Enter to launch notepad.
  • Type 'a'.
  • Type Alt+Backquote three times to confirm the status is announced as 'IME opened'.
  • Type Alt-F4.

The notepad opens 'save as' dialog and NVDA (and Windows Explorer) crashes.

This issue is reported since last year with NVDA Japanese version. We now found the exact way of reproduction.
It depends on the setting of default input method.

@nvaccessAuto

Attachment nvda.log added by nishimotz on 2013-03-15 04:04
Description:

@nvaccessAuto

Comment 1 by nishimotz on 2013-03-15 04:21
This issue also happens with Chinese version of Office IME 2010.

Attached nvda.log was obtained with NVDA 2013.1beta1 (portable) and Microsoft Office IME 2010 New Phonetic (Traditional Chinese).

  • Windows 7 64bit Ultimate (English interface)
  • US keyboard
  • no installed version of NVDA
  • Default input language: Microsoft Office IME New Phonetic 2010

Microsoft Office IME 2010
http://www.microsoft.com/en-us/download/details.aspx?id=30390

InputMethodEditor x86 zh-tw.exe is installed, because Microsoft says thet if the user is using 32bit version of licensed Microsoft Office, 32bit version of IME should be installed.

The log says nothing, but eSpeak suddenly stop speaking and NVDA crashes.
After that, Windows Explorer is very sluggish and difficult to use without rebooting computer.

According to my test with Japanese Office IME 2010, this issue is not regression regarding input composition support, because is happens since NVDA 2009.1.

@nvaccessAuto

Attachment 3064.patch added by nishimotz on 2013-04-12 08:24
Description:
3064.patch which adds Button to badUIAWindowClassNames

@nvaccessAuto

Comment 2 by nishimotz on 2013-04-12 08:33
Attached patch is working so far as we tested, although we are not sure it breaks something different.

As far as investigated by NVDA Japanese team colleagues, this freeze occurs when Office IME 2010 Japanese is default input and a dialog is shown which has the initial focus on a button control.

The button control is a native control, so it can obtain keyboard focus. Office IME 2010 sub-classes such focusable object and enables or disables IME.
UIA should be disabled for such buttons.

@nvaccessAuto

Comment 3 by jteh on 2013-04-24 03:52
Is this a crash or a freeze? If it's a crash, NVDA should restart, but to be sure, is the nvda.exe process still running?

I'm concerned that disabling UIA for the Button window class is just hiding the problem and not actually fixing it, as I don't follow why the input method would subclass it.

@nvaccessAuto

Comment 4 by nishimotz on 2013-04-24 08:08
To be exact, NVDA doesn't restart when the issue occurs.
It should be said that NVDA freezes.

!WinDbg remote logs are sent to Mick, but I forgot to share. NVDA 2012.3 rev 6037 is used.

First and second files as follows are obtained when Delete key is pressed on Desktop.

https://dl.dropboxusercontent.com/u/62564469/office-ime-2010-logs/nvda-windbg-130408-1620.txt
https://dl.dropboxusercontent.com/u/62564469/office-ime-2010-logs/nvda-windbg-130408-1627.txt

Third file is obtained when Notepad Save As dialog crashed NVDA.

https://dl.dropboxusercontent.com/u/62564469/office-ime-2010-logs/nvda-windbg-130408-1729.txt

@nvaccessAuto

Comment 5 by mdcurran on 2013-05-28 23:39
I am unable to install the Office 2010 Japanese input method as when I run the installer either on Win7 or win8, I get:
"この更新プログラムは、このオペレーティング システムには適用できません。"
According to Google, it translates as:
"This update does not apply to this Operating System".
I guess I need an actual Japanese copy of Windows to run this?

@nvaccessAuto

Comment 6 by nishimotz on 2013-05-28 23:51
The download page (in Japanese)
https://www.microsoft.com/ja-jp/office/2010/ime/default.aspx
says that

(1) Valid license of Office 2010, 2007, 2003 or XP is required.

(2) Supported systems are: Windows 7, Windows Vista, Windows XP Service Pack 3, Windows Server 2008, Windows Server 2003

It does not mention Japanese Windows, however, Windows 8 is not applicable.

Office 2013 is also supported, according to the download page.

@nvaccessAuto

Comment 7 by Michael Curran <mick@... on 2013-07-18 05:56
In [996496f]:
```CommitTicketReference repository="" revision="996496f31153c6c054ea42d7b008574d28624827"
Add 'Button' to bad UIA window classes as it seems to fix a freeze when using Japanese and Chinese Office 2010 IME in some dialogs. Re #3064

@nvaccessAuto

Comment 8 by mdcurran on 2013-07-18 06:02
We have decided to take this patch as a fix. Still not great as it possibly hides the real cause, but until we can find it, this is good enough.
However, please test the "next" branch when this is incubated in a minute, and if you can confirm it fixes the bug in next, then it will hopefully hit master before our release freeze.
Changes:
Milestone changed from None to next

@nvaccessAuto

Comment 9 by Michael Curran <mick@... on 2013-07-18 06:02
In [73ac5a4]:
```CommitTicketReference repository="" revision="73ac5a42f002be96acb7653441d6098add17aed9"
Merge branch 't3064' into next

Incubates #3064
user_docs/en/changes.t2t

Changes:
Added labels: incubating
@nvaccessAuto

Comment 10 by mdcurran on 2013-07-29 03:59
Is this bug fixed in next? I need to know in next two days if its going to get into master for 2013.2

@nvaccessAuto

Comment 11 by nishimotz on 2013-07-29 11:06
Confirmed that NVDA next-9419,b27dcf2 does not crash with Japanese Microsoft Office IME 2010 and Windows 7.

@nvaccessAuto

Comment 12 by Michael Curran <mick@... on 2013-07-29 23:09
In [4201f5d]:
```CommitTicketReference repository="" revision="4201f5db57dcff06489ae9c407391d8dbcbef038"
Add 'Button' to bad UIA window classes as it seems to fix a freeze when using Japanese and Chinese Office 2010 IME in some dialogs. Fixes #3064

Changes:
Removed labels: incubating
State: closed
@nvaccessAuto

Comment 13 by jteh on 2013-11-26 23:14
Changes:
Milestone changed from next to 2013.2

@nvaccessAuto nvaccessAuto added this to the 2013.2 milestone Nov 10, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment