Ticket #32145

既定の入力システムがMicrosoft Office IME 2010でファイルの上書きをするとフリーズする

Open Date: 2013-09-29 22:26 Last Update: 2013-10-16 18:12

Reporter:
Owner:
(None)
Type:
Status:
Closed
Component:
(None)
MileStone:
Priority:
6
Severity:
6
Resolution:
Fixed
File:
None

Details

既定の入力システムがMicrosoft Office IME 2010で、点字ディスプレイ出力を使いながら、ファイルの上書きをするとフリーズする現象を確認しています。

以下の環境で再現されました。

  • Windows 7 SP1 64ビット
  • 既定の入力システム Microsoft Office IME 2010
  • 点字ディスプレイ出力:ケージーエス BM46
  • NVDA 2013.2jp
  • NVDA メニューのオブジェクト設定でプログレスバー「ビープと読み上げ」にする

手順

  • デスクトップに nvda_2013.2jp.exe をリネームした あ.exe を作る
  • デスクトップに「新しいフォルダー」を作る
  • 「新しいフォルダー」の中に あ.exe をコピーする
  • NVDA を実行して点字ディスプレイ出力を有効にして、まずデスクトップの あ.exe にフォーカスを移動して Ctrl+C を押す
  • 「新しいフォルダー」にフォーカスを移動してエンターを押して、エクスプローラーを開く。そのフォルダーにはすでに あ.exe がある
  • その状態で Ctrl+V を押して あ.exe を上書きする
  • 「この場所には同じ名前のファイルが既にあります」というダイアログが出て、キャンセルのボタン、「コピーして置き換える」「コピーしない」「コピーするが両方のファイルを保持する」という選択肢があるが、このときにフリーズしてしまう

備考

  • nvda.ini の UIA セクションで minWindowsVersion = 6.2 にする(Windows 7 での UIA を無効にする)と、フリーズしない

過去の関連バグ #30056

Ticket History (3/9 Histories)

2013-09-29 22:26 Updated by: nishimoto
  • New Ticket "既定の入力システムがMicrosoft Office IME 2010でファイルの上書きをするとフリーズする" created
2013-09-30 12:14 Updated by: nishimoto
Comment

追加調査したので補足します。

(1)

セットアップ:

  • Windows 7 SP1 64ビット
  • 既定の入力システム Microsoft Office IME 2010
  • NVDA 2013.2jp インストール環境
  • NVDA メニューのオブジェクト設定でプログレスバー「ビープと読み上げ」にする
  • Windows の表示言語:日本語
  • NVDA の表示言語:日本語

フリーズする:

  • 音声エンジン JTalk + 点字ディスプレイ KGS BM シリーズ、出力テーブル「日本語6点情報処理点字」
  • 音声なし + 点字ディスプレイ KGS BM シリーズ、出力テーブル「日本語6点情報処理点字」

フリーズしない:

  • 音声エンジン JTalk + 点字なし
  • 音声エンジン JTalk + 点字ディスプレイ KGS BM シリーズ、出力テーブル「英語8点コンピューター点字」

(2)

セットアップ(1)から Windows と NVDA の言語設定を変えた場合:

  • Windows の表示言語:英語
  • NVDA の表示言語:英語

フリーズする:

  • 音声エンジン JTalk + 点字ディスプレイ KGS BM シリーズ、出力テーブル「日本語6点情報処理点字」
  • 音声エンジン SAPI 5 Microsoft Anna + 点字ディスプレイ KGS BM シリーズ、出力テーブル「日本語6点情報処理点字」
  • 音声エンジン SAPI 5 Microsoft Anna + 点字ディスプレイ KGS BM シリーズ、出力テーブル「英語8点コンピューター点字」

点字出力テーブル「日本語6点情報処理点字」に依存するかと思ったのですが、最後のケースで仮説が崩れました。

引き続き調べてみます。

2013-09-30 13:29 Updated by: nishimoto
Comment

さらに追加調査しました。

セットアップ:

  • Windows 7 SP1 64ビット
  • Windows の表示言語:英語(米国)
  • 既定の入力システム Microsoft Office IME 2010
  • NVDA 2013.2 本家版(ポータブル環境)
  • NVDA の表示言語:英語
  • NVDA メニューのオブジェクト設定でプログレスバー「ビープと読み上げ」にする
  • 音声エンジン eSpeak (NVDA本家版のデフォルト)
  • アドオン版 KGS ドライバー 130521 http://sourceforge.jp/projects/nvdajp/releases/58859/note
  • 点字ディスプレイ KGS BM シリーズ、出力テーブル「英語8点コンピューター点字」

この環境で、最初はフリーズしませんでしたが、もう一度上書きコピーするとフリーズしました。

1回試しただけでフリーズしないと判断してはいけないようです。

KGS ドライバーに依存する可能性は残っていますが、そのほかの日本語版独自処理(日本語点訳エンジンなど)には依存していないと言えそうです。

2013-10-08 10:42 Updated by: nishimoto
Comment

NVDA をデバッグビルドして windbg からリモートデバッグしてログをとりました。

大まかな手順 http://ja.nishimotz.com/nvdajp_scons?s[]=nvdajp&s[]=scons#%E3%83%87%E3%83%90%E3%83%83%E3%82%B0

落ちたときのスタックトレースを見ると BMユーティリティの KbdcUtil.dll が出てきます。

なんとなく KGS の常駐ソフトウェアと Microsoft Office IME 2010 の両方が影響しているように思われます。

デバッギを実行している環境が BM ユーティリティ 5.0 だったので、いずれ 5.0.1 にアップデートして再検討してみます。

もし BM ユーティリティが関係しているなら、以下の仮説がなりたちます:

  • 他のベンダーの点字ディスプレイを使っている(BMユーティリティをインストールしていない)環境ではこの現象は起こらない
  • NVDA を点字出力なしにしていても、BM ユーティリティがバックグラウンドで動いていたら、クラッシュを引き起こす可能性がある
Microsoft (R) Windows Debugger Version 6.12.0002.633 AMD64
Copyright (c) Microsoft Corporation. All rights reserved.

Server started.  Client can connect with any of these command lines
0: <debugger> -remote tcp:Port=9999,Server=PC-NISHI2011A
PC-NISHI2012A\nishimotz (tcp 192.168.0.7:49645) connected at Tue Oct 08 10:16:26 2013
0:000> g
ModLoad: 00000000`77910000 00000000`77a2f000   WOW64_IMAGE_SECTION
ModLoad: 00000000`77530000 00000000`77640000   WOW64_IMAGE_SECTION
ModLoad: 00000000`77910000 00000000`77a2f000   NOT_AN_IMAGE
ModLoad: 00000000`77810000 00000000`7790a000   NOT_AN_IMAGE
ModLoad: 00000000`77530000 00000000`77640000   C:\Windows\syswow64\kernel32.dll
ModLoad: 00000000`756f0000 00000000`75737000   C:\Windows\syswow64\KERNELBASE.dll
ModLoad: 00000000`773d0000 00000000`774d0000   C:\Windows\syswow64\USER32.dll
ModLoad: 00000000`762d0000 00000000`76360000   C:\Windows\syswow64\GDI32.dll
ModLoad: 00000000`774d0000 00000000`774da000   C:\Windows\syswow64\LPK.dll
ModLoad: 00000000`75b10000 00000000`75bad000   C:\Windows\syswow64\USP10.dll
ModLoad: 00000000`75990000 00000000`75a3c000   C:\Windows\syswow64\msvcrt.dll
ModLoad: 00000000`758f0000 00000000`75990000   C:\Windows\syswow64\ADVAPI32.dll
ModLoad: 00000000`77510000 00000000`77529000   C:\Windows\SysWOW64\sechost.dll
ModLoad: 00000000`75bb0000 00000000`75ca0000   C:\Windows\syswow64\RPCRT4.dll
ModLoad: 00000000`75630000 00000000`75690000   C:\Windows\syswow64\SspiCli.dll
ModLoad: 00000000`75620000 00000000`7562c000   C:\Windows\syswow64\CRYPTBASE.dll
ModLoad: 00000000`73ee0000 00000000`73f83000   C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCR90.dll
(500.754): WOW64 breakpoint - code 4000001f (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
ntdll32!LdrpDoDebuggerBreak+0x2c:
77cb103b cc              int     3
0:000:x86> g
ModLoad: 75880000 758e0000   C:\Windows\SysWOW64\IMM32.DLL
ModLoad: 75740000 7580c000   C:\Windows\syswow64\MSCTF.dll
ModLoad: 1e000000 1e261000   C:\work\nvda\nvdajp\dist\PYTHON27.DLL
ModLoad: 76510000 7715a000   C:\Windows\syswow64\SHELL32.dll
ModLoad: 75690000 756e7000   C:\Windows\syswow64\SHLWAPI.dll
ModLoad: 1d1a0000 1d1b8000   C:\work\nvda\nvdajp\dist\_ctypes.pyd
ModLoad: 763b0000 7650c000   C:\Windows\syswow64\ole32.dll
ModLoad: 75d70000 75dff000   C:\Windows\syswow64\OLEAUT32.dll
ModLoad: 10000000 1005b000   C:\work\nvda\nvdajp\dist\_hashlib.pyd
ModLoad: 73db0000 73dc6000   C:\Windows\SysWOW64\CRYPTSP.dll
ModLoad: 73d70000 73dab000   C:\Windows\SysWOW64\rsaenh.dll
ModLoad: 00250000 00255000   C:\work\nvda\nvdajp\dist\winsound.pyd
ModLoad: 74170000 741a2000   C:\Windows\SysWOW64\WINMM.dll
ModLoad: 73600000 73680000   C:\Windows\SysWOW64\uxtheme.dll
ModLoad: 00000000`70110000 00000000`70149000   C:\Windows\SysWOW64\MMDevAPI.DLL
ModLoad: 00000000`70fd0000 00000000`710c5000   C:\Windows\SysWOW64\PROPSYS.dll
ModLoad: 00000000`75540000 00000000`75570000   C:\Windows\SysWOW64\wdmaud.drv
ModLoad: 00000000`75530000 00000000`75534000   C:\Windows\SysWOW64\ksuser.dll
ModLoad: 00000000`75520000 00000000`75527000   C:\Windows\SysWOW64\AVRT.dll
ModLoad: 00000000`76000000 00000000`7619d000   C:\Windows\syswow64\SETUPAPI.dll
ModLoad: 00000000`75d40000 00000000`75d67000   C:\Windows\syswow64\CFGMGR32.dll
ModLoad: 00000000`774f0000 00000000`77502000   C:\Windows\syswow64\DEVOBJ.dll
ModLoad: 00000000`700d0000 00000000`70106000   C:\Windows\SysWOW64\AUDIOSES.DLL
ModLoad: 00000000`75510000 00000000`75518000   C:\Windows\SysWOW64\msacm32.drv
ModLoad: 00000000`754f0000 00000000`75504000   C:\Windows\SysWOW64\MSACM32.dll
ModLoad: 00000000`754e0000 00000000`754e7000   C:\Windows\SysWOW64\midimap.dll
ModLoad: 00000000`75e30000 00000000`75eb3000   C:\Windows\syswow64\CLBCatQ.DLL
ModLoad: 00000000`73430000 00000000`73443000   C:\Windows\SysWOW64\dwmapi.dll
ModLoad: 00000000`03800000 00000000`0380d000   C:\work\nvda\nvdajp\dist\_socket.pyd
ModLoad: 00000000`75a40000 00000000`75a75000   C:\Windows\syswow64\WS2_32.dll
ModLoad: 00000000`773c0000 00000000`773c6000   C:\Windows\syswow64\NSI.dll
ModLoad: 00000000`03810000 00000000`038f0000   C:\work\nvda\nvdajp\dist\_ssl.pyd
ModLoad: 00000000`039c0000 00000000`03a6a000   C:\work\nvda\nvdajp\dist\unicodedata.pyd
ModLoad: 00000000`03910000 00000000`03932000   C:\work\nvda\nvdajp\dist\pyexpat.pyd
ModLoad: 00000000`04310000 00000000`04403000   C:\work\nvda\nvdajp\dist\wx._core_.pyd
ModLoad: 00000000`04410000 00000000`04554000   C:\work\nvda\nvdajp\dist\wxbase28uh_vc.dll
ModLoad: 00000000`73680000 00000000`7370e000   C:\Windows\WinSxS\x86_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_50934f2ebcb7eb57\MSVCP90.dll
ModLoad: 00000000`03950000 00000000`03971000   C:\work\nvda\nvdajp\dist\wxbase28uh_net_vc.dll
ModLoad: 00000000`74410000 00000000`74417000   C:\Windows\SysWOW64\WSOCK32.dll
ModLoad: 00000000`04560000 00000000`0488f000   C:\work\nvda\nvdajp\dist\wxmsw28uh_core_vc.dll
ModLoad: 00000000`75340000 00000000`754d0000   C:\Windows\WinSxS\x86_microsoft.windows.gdiplus_6595b64144ccf1df_1.1.7601.18120_none_72d2e82386681b36\gdiplus.dll
ModLoad: 00000000`75ca0000 00000000`75d1b000   C:\Windows\syswow64\COMDLG32.dll
ModLoad: 00000000`739b0000 00000000`73b4e000   C:\Windows\WinSxS\x86_microsoft.windows.common-controls_6595b64144ccf1df_6.0.7601.17514_none_41e6975e2bd6f2b2\COMCTL32.dll
ModLoad: 00000000`73080000 00000000`730d1000   C:\Windows\SysWOW64\WINSPOOL.DRV
ModLoad: 00000000`04890000 00000000`04947000   C:\work\nvda\nvdajp\dist\wxmsw28uh_adv_vc.dll
ModLoad: 00000000`04950000 00000000`04a0a000   C:\work\nvda\nvdajp\dist\wx._gdi_.pyd
ModLoad: 00000000`04c50000 00000000`04cf8000   C:\work\nvda\nvdajp\dist\wx._windows_.pyd
ModLoad: 00000000`04a10000 00000000`04a89000   C:\work\nvda\nvdajp\dist\wxmsw28uh_html_vc.dll
ModLoad: 00000000`04d00000 00000000`04df0000   C:\work\nvda\nvdajp\dist\wx._controls_.pyd
ModLoad: 00000000`036c0000 00000000`03768000   C:\work\nvda\nvdajp\dist\wx._misc_.pyd
ModLoad: 00000000`752e0000 00000000`75332000   C:\work\nvda\nvdajp\dist\liblouis.dll
ModLoad: 00000000`752c0000 00000000`752db000   C:\Windows\SysWOW64\windowsAccessBridge-32.DLL
ModLoad: 00000000`1e8f0000 00000000`1e8f8000   C:\work\nvda\nvdajp\dist\win32clipboard.pyd
ModLoad: 00000000`1e7a0000 00000000`1e7be000   C:\work\nvda\nvdajp\dist\pywintypes27.dll
ModLoad: 00000000`75260000 00000000`752c0000   C:\work\nvda\nvdajp\dist\lib\nvdaHelperLocal.dll
ModLoad: 00000000`73d60000 00000000`73d6e000   C:\Windows\SysWOW64\RpcRtRemote.dll
ModLoad: 00000000`70200000 00000000`7023c000   C:\Windows\SysWOW64\oleacc.dll
ModLoad: 00000000`751d0000 00000000`7525c000   C:\Windows\SysWOW64\UIAutomationCore.dll
ModLoad: 00000000`75ff0000 00000000`75ff5000   C:\Windows\syswow64\PSAPI.DLL
ModLoad: 00000000`75110000 00000000`751cb000   C:\work\nvda\nvdajp\dist\lib\nvdaHelperRemote.dll
ModLoad: 00000000`73ed0000 00000000`73ed9000   C:\Windows\SysWOW64\VERSION.dll
ModLoad: 00000000`750e0000 00000000`7510e000   C:\work\nvda\nvdajp\dist\lib\IAccessible2Proxy.dll
ModLoad: 00000000`75090000 00000000`750d2000   C:\work\nvda\nvdajp\dist\lib\minhook.dll
ModLoad: 00000000`735b0000 00000000`735fc000   C:\Windows\SysWOW64\apphelp.dll
ModLoad: 00000000`75040000 00000000`75082000   C:\work\nvda\nvdajp\dist\synthDrivers\jtalk\libopenjtalk.dll
ModLoad: 00000000`6f340000 00000000`6f7e7000   C:\work\nvda\nvdajp\dist\synthDrivers\jtalk\libmecab.dll
ModLoad: 00000000`06400000 00000000`0641a000   C:\work\nvda\nvdajp\dist\brailleDisplayDrivers\DirectBM.dll
ModLoad: 00000000`74fd0000 00000000`75035000   C:\Program files (x86)\KGS\BMユーティリティWow64互換パック\KbdcUtil.dll
ModLoad: 00000000`73c80000 00000000`73c8b000   C:\Windows\SysWOW64\profapi.dll
ModLoad: 00000000`73e40000 00000000`73e61000   C:\Windows\SysWOW64\ntmarta.dll
ModLoad: 00000000`76360000 00000000`763a5000   C:\Windows\syswow64\WLDAP32.dll
ModLoad: 00000000`06460000 00000000`06470000   C:\Program files (x86)\KGS\BMユーティリティWow64互換パック\KbdcServUtil.dll
ModLoad: 00000000`761a0000 00000000`762c3000   C:\Windows\SysWOW64\urlmon.dll
ModLoad: 00000000`758e0000 00000000`758e4000   C:\Windows\syswow64\api-ms-win-downlevel-ole32-l1-1-0.dll
ModLoad: 00000000`75810000 00000000`75814000   C:\Windows\syswow64\api-ms-win-downlevel-shlwapi-l1-1-0.dll
ModLoad: 00000000`77be0000 00000000`77be5000   C:\Windows\syswow64\api-ms-win-downlevel-advapi32-l1-1-0.dll
ModLoad: 00000000`77160000 00000000`77164000   C:\Windows\syswow64\api-ms-win-downlevel-user32-l1-1-0.dll
ModLoad: 00000000`774e0000 00000000`774e4000   C:\Windows\syswow64\api-ms-win-downlevel-version-l1-1-0.dll
ModLoad: 00000000`75d30000 00000000`75d33000   C:\Windows\syswow64\api-ms-win-downlevel-normaliz-l1-1-0.dll
ModLoad: 00000000`75fe0000 00000000`75fe3000   C:\Windows\syswow64\normaliz.DLL
ModLoad: 00000000`77170000 00000000`77385000   C:\Windows\syswow64\iertutil.dll
ModLoad: 00000000`77640000 00000000`77803000   C:\Windows\syswow64\WININET.dll
ModLoad: 00000000`73ec0000 00000000`73ec8000   C:\Windows\SysWOW64\Secur32.dll
ModLoad: 00000000`73c60000 00000000`73c64000   C:\Windows\SysWOW64\api-ms-win-downlevel-advapi32-l2-1-0.dll
ModLoad: 00000000`0b5d0000 00000000`0b604000   image00000000`0b5d0000
ModLoad: 00000000`74fc0000 00000000`74fc3000   C:\Windows\SysWOW64\sfc.dll
ModLoad: 00000000`033f0000 00000000`03400000   C:\Windows\system32\sfc_os.DLL
ModLoad: 00000000`033f0000 00000000`03400000   C:\Windows\system32\sfc_os.DLL
ModLoad: 00000000`73210000 00000000`73324000   imejp.dll
ModLoad: 00000000`73210000 00000000`73324000   C:\Windows\SysWOW64\imjp14.ime
ModLoad: 00000000`730e0000 00000000`73202000   C:\Windows\SysWOW64\imjp14k.dll
ModLoad: 00000000`0c530000 00000000`0c68c000   C:\Windows\SysWOW64\ole32.dll
ModLoad: 00000000`70480000 00000000`7057d000   C:\PROGRA~2\COMMON~1\MICROS~1\IME14\IMEJP\IMJPAPI.DLL
ModLoad: 00000000`70450000 00000000`7047a000   C:\Program Files (x86)\Common Files\Microsoft Shared\IME14\SHARED\IMJKAPI.DLL
ModLoad: 00000000`70400000 00000000`70450000   C:\Program Files (x86)\Common Files\Microsoft Shared\IME14\IMEJP\IMJPPRED.DLL
ModLoad: 00000000`0b2b0000 00000000`0b33c000   C:\Windows\SysWOW64\uiautomationcore.dll
ModLoad: 00000000`74fc0000 00000000`74fc6000   C:\Windows\SysWOW64\OLEACCHOOKS.DLL
ModLoad: 00000000`74f60000 00000000`74fbf000   C:\Windows\SysWOW64\SXS.DLL
ModLoad: 00000000`74f10000 00000000`74f55000   C:\Program Files (x86)\Internet Explorer\ieproxy.dll
ModLoad: 00000000`6fcf0000 00000000`6fcf4000   C:\Windows\SysWOW64\api-ms-win-downlevel-shlwapi-l2-1-0.dll
ModLoad: 00000000`0b5d0000 00000000`0b60c000   C:\Windows\SysWOW64\oleacc.dll
ModLoad: 00000000`6f2a0000 00000000`6f334000   C:\Windows\SysWOW64\msftedit.DLL
ModLoad: 00000000`0ba40000 00000000`0baa0000   C:\work\nvda\nvdajp\dist\pythoncom27.dll
ModLoad: 00000000`0cf70000 00000000`0d0cc000   C:\Windows\SysWOW64\ole32.dll
ModLoad: 00000000`70240000 00000000`703fc000   C:\Program Files (x86)\Common Files\Microsoft Shared\IME14\IMEJP\IMJPTIP.DLL
ModLoad: 00000000`70150000 00000000`701fa000   C:\PROGRA~2\COMMON~1\MICROS~1\IME14\SHARED\IMETIP.DLL
ModLoad: 00000000`0cf70000 00000000`0d03c000   C:\Windows\SysWOW64\msctf.dll
ModLoad: 00000000`0cf70000 00000000`0d03c000   C:\Windows\SysWOW64\msctf.dll
ModLoad: 00000000`73330000 00000000`73348000   C:\PROGRA~2\COMMON~1\MICROS~1\IME14\SHARED\IMECFM.DLL
ModLoad: 00000000`73350000 00000000`73356000   C:\Program Files (x86)\Common Files\Microsoft Shared\IME14\SHARED\IMECMPS.DLL
ModLoad: 00000000`700b0000 00000000`700ca000   C:\Program Files (x86)\Common Files\Microsoft Shared\IME14\SHARED\IMESEARCHDLL.DLL
ModLoad: 00000000`0b650000 00000000`0b671000   C:\work\nvda\nvdajp\dist\brailleDisplayDrivers\alvaw32.dll
ModLoad: 00000000`74f00000 00000000`74f09000   C:\Windows\SysWOW64\HID.DLL
ModLoad: 00000000`6f1f0000 00000000`6f2a0000   C:\Windows\SysWOW64\bthprops.cpl
ModLoad: 00000000`77390000 00000000`773be000   C:\Windows\syswow64\WINTRUST.dll
ModLoad: 00000000`75ec0000 00000000`75fe0000   C:\Windows\syswow64\CRYPT32.dll
ModLoad: 00000000`75d20000 00000000`75d2c000   C:\Windows\syswow64\MSASN1.dll
ModLoad: 00000000`69fc0000 00000000`69fe1000   C:\work\nvda\nvdajp\dist\brlapi.pyd
ModLoad: 00000000`693c0000 00000000`693d7000   C:\work\nvda\nvdajp\dist\brlapi-0.5.dll
ModLoad: 00000000`0d070000 00000000`0d0aa000   C:\work\nvda\nvdajp\dist\brailleDisplayDrivers\hims\HanSoneConnect.dll
ModLoad: 00000000`0bbe0000 00000000`0bbf5000   C:\work\nvda\nvdajp\dist\brailleDisplayDrivers\lilli.dll
ModLoad: 00000000`0d0b0000 00000000`0d0e9000   C:\work\nvda\nvdajp\dist\ftd2xx.DLL
ModLoad: 00000000`0d100000 00000000`0d10c000   C:\work\nvda\nvdajp\dist\brailleDisplayDrivers\syncBraille\SyncBraille.dll
ModLoad: 00000000`6f0d0000 00000000`6f1ec000   C:\Windows\SysWOW64\MFC42.DLL
ModLoad: 00000000`6f040000 00000000`6f0cc000   C:\Windows\SysWOW64\ODBC32.dll
ModLoad: 00000000`6f000000 00000000`6f038000   C:\Windows\SysWOW64\odbcint.dll
ModLoad: 00000000`0de50000 00000000`0ea9a000   C:\Windows\SysWOW64\shell32.dll
ModLoad: 00000000`0d6b0000 00000000`0d6e4000   image00000000`0d6b0000
ModLoad: 00000000`74ef0000 00000000`74ef3000   C:\Windows\SysWOW64\sfc.dll
ModLoad: 00000000`0d6b0000 00000000`0d6c0000   C:\Windows\system32\sfc_os.DLL
ModLoad: 00000000`0b250000 00000000`0b260000   C:\Windows\system32\sfc_os.DLL
ModLoad: 00000000`73330000 00000000`73348000   C:\PROGRA~2\COMMON~1\MICROS~1\IME14\SHARED\IMECFM.DLL
HEAP[nvda_noUIAccess.exe]: Invalid address specified to RtlSizeHeap( 005D0000, 00603CD8 )
(500.8b4): WOW64 breakpoint - code 4000001f (first chance)
First chance exceptions are reported before any exception handling.
This exception may be expected and handled.
ntdll32!RtlpBreakPointHeap+0x23:
77ce0574 cc              int     3
0:016:x86> kp
ChildEBP RetAddr  
0b8ff6bc 77ca2aba ntdll32!RtlpBreakPointHeap+0x23
0b8ff6d8 77ce1c01 ntdll32!RtlpValidateHeapEntry+0x16d
0b8ff720 77c99c89 ntdll32!RtlDebugSizeHeap+0x9f
0b8ff738 763f625c ntdll32!RtlSizeHeap+0x27
0b8ff74c 75d7443a ole32!CRetailMalloc_GetSize(struct IMalloc * pThis = 0x764f66bc, void * pv = 0x00603cd8)+0x21 [d:\w7rtm\com\ole32\com\class\memapi.cxx @ 710]
0b8ff770 75d73ea3 OLEAUT32!APP_DATA::FreeCachedMem+0x30
0b8ff78c 75d77803 OLEAUT32!SysFreeString+0x6b
0b8ff79c 75da433d OLEAUT32!BSTR_UserFree+0x19
0b8ff7b0 75be7af6 OLEAUT32!VARIANT_UserFree+0xe4
0b8ff7e8 75c6083e RPCRT4!NdrUserMarshalFree+0x37
0b8ff80c 75c6072a RPCRT4!NdrpFreeParams+0x145
0b8ff820 75c606e0 RPCRT4!NdrStubCall2+0x4eb
0b8ffc18 764ed7e6 RPCRT4!NdrStubCall2+0x42a
0b8ffc60 75d7ffd3 ole32!CStdStubBuffer_Invoke(struct IRpcStubBuffer * This = 0x0066f718, struct tagRPCOLEMESSAGE * prpcmsg = 0x006c2fd0, struct IRpcChannelBuffer * pRpcChannelBuffer = 0x0065b678)+0xb6 [d:\w7rtm\com\rpc\ndrole\stub.cxx @ 1590]
0b8ffc84 764ed876 OLEAUT32!CUnivStubWrapper::Invoke+0xcb
0b8ffccc 764eddd0 ole32!SyncStubInvoke(struct tagRPCOLEMESSAGE * pMsg = 0x006c2fd0, struct _GUID * riid = 0x0066b7e4 {40cd37d4-c756-4b0c-8c6f-bddfeeb13b50}, class CIDObject * pID = 0x00655d58, void * pVtableAddress = 0x04e6d0f8, struct IRpcChannelBuffer * pChnl = 0x0065b678, struct IRpcStubBuffer * pStub = 0x0066b600, unsigned long * pdwFault = 0x0b8ffe48)+0x3c [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1187]
0b8ffd18 76408a43 ole32!StubInvoke(struct tagRPCOLEMESSAGE * pMsg = 0x006c2fd0, class CStdIdentity * pStdID = 0x0066a400, struct IRpcStubBuffer * pStub = 0x0066b600, struct IRpcChannelBuffer * pChnl = 0x0065b678, struct tagIPIDEntry * pIPIDEntry = 0x80004021, unsigned long * pdwFault = 0x0b8ffe48)+0xb9 [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1396]
0b8ffdf4 76408938 ole32!CCtxComChnl::ContextInvoke(struct tagRPCOLEMESSAGE * pMessage = 0x00000000, struct IRpcStubBuffer * pStub = 0x0066b600, struct tagIPIDEntry * pIPIDEntry = 0x00613128, unsigned long * pdwFault = 0x0b8ffe48)+0xfa [d:\w7rtm\com\ole32\com\dcomrem\ctxchnl.cxx @ 1262]
0b8ffe10 764ea44c ole32!MTAInvoke(struct tagRPCOLEMESSAGE * pMsg = 0x006c2fd0, unsigned long CallCatIn = 1, struct IRpcStubBuffer * pStub = 0x0066b600, class IInternalChannelBuffer * pChnl = 0x0065b678, struct tagIPIDEntry * pIPIDEntry = 0x00613128, unsigned long * pdwFault = 0x0b8ffe48)+0x1a [d:\w7rtm\com\ole32\com\dcomrem\callctrl.cxx @ 2105]
0b8ffe40 764edb41 ole32!AppInvoke(class CMessageCall * pCall = 0xd0908070, class CRpcChannelBuffer * pChannel = 0x0065b678, struct IRpcStubBuffer * pStub = 0x0066b600, void * pv = 0x04e03418, void * pStubBuffer = 0x0db517b0, struct tagIPIDEntry * pIPIDEntry = 0x00613128, struct LocalThis * pLocalb = 0x0db517a8)+0xab [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1086]
0b8fff20 764ee1fd ole32!ComInvokeWithLockAndIPID(class CMessageCall * pCall = 0x006c2f78, struct tagIPIDEntry * pIPIDEntry = 0x00613128)+0x372 [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1724]
0b8fff48 76409367 ole32!ComInvoke(class CMessageCall * pCall = 0x006c2f78)+0xc5 [d:\w7rtm\com\ole32\com\dcomrem\channelb.cxx @ 1469]
0b8fff5c 763dcd48 ole32!ThreadDispatch(void * param = 0x006c2f78)+0x23 [d:\w7rtm\com\ole32\com\dcomrem\chancont.cxx @ 298]
0b8fff78 763dd87a ole32!CRpcThread::WorkerLoop(void)+0x26 [d:\w7rtm\com\ole32\com\dcomrem\threads.cxx @ 257]
0b8fff88 7754336a ole32!CRpcThreadCache::RpcWorkerThreadEntry(void * param = 0x006640d0)+0x16 [d:\w7rtm\com\ole32\com\dcomrem\threads.cxx @ 63]
0b8fff94 77c49f72 kernel32!BaseThreadInitThunk+0xe
0b8fffd4 77c49f45 ntdll32!__RtlUserThreadStart+0x70
0b8fffec 00000000 ntdll32!_RtlUserThreadStart+0x1b
0:016:x86> !findstack nvdaHelper
*** WARNING: Unable to verify checksum for C:\work\nvda\nvdajp\dist\_ctypes.pyd
Thread 006, 1 frame(s) match
        * 02 0000000005ebff88 000000007754336a nvdaHelperRemote!outprocMgrThreadFunc+0xe0

Thread 008, 1 frame(s) match
        * 05 00000000061fff88 000000007754336a nvdaHelperRemote!inprocMgrThreadFunc+0x723

*** ERROR: Symbol file could not be found.  Defaulted to export symbols for C:\Program files (x86)\KGS\BMユーティリティWow64互換パック\KbdcUtil.dll - 
2013-10-08 11:15 Updated by: nishimoto
Comment

さきほどの仮説が間違っていたようなので、補足します。

BM ユーティリティをアンインストールして、点字ディスプレイなしでリモートデバッグのテストをしても、同様にクラッシュが起きました。

ちなみに音声エンジンを JTalk から eSpeak にしてもクラッシュの状況はほぼ同じでした。

過去のバグ #30056 が解決していなかった(badUIAWindowClassNames に Button を追加するだけでは不十分だった)ということになりそうです。

スタックトレースに出てくる GUID は IID_IUIAutomationPropertyChangedEventHandler でした。

http://msdn.microsoft.com/en-us/library/windows/desktop/ee696119%28v=vs.85%29.aspx

前回の不具合対応で Mick さんからこんな指摘を受けていました:

NVDA はこのコンテクストで COM RPC を使っていない。 Office IME 2010 が UIA 関連で RPC を使っていて、これが不適切に実装されていることが、クラッシュの原因ではないか。

もう少し検討してみます。

2013-10-08 15:22 Updated by: nishimoto
  • Severity Update from 5 - Medium to 6
  • Milestone Update from (None) to 2013.3jp (closed)
  • Resolution Update from None to Accepted
2013-10-08 21:01 Updated by: nishimoto
  • Resolution Update from Accepted to Fixed
  • Priority Update from 5 - Medium to 6
Comment

どうやら本当に追加すべきだったのは "SysLink" だけのようです。

BM ユーティリティ 5.0.1 で BM46 をつなぎながら、この SysLink を無効にするかしないかでフリーズするかしないかが変わることを確認しました。

いままでのコミット:

https://bitbucket.org/nvdajp/nvdajp/commits/df7ea95ff0146692f9834d0971499188af650eff

2013-10-09 23:20 Updated by: nishimoto
Comment

どうやら "SysLink" の無効化はうまくいっているようなので、uia ブランチのマージではなく jpbranch に改めてコミットしました。

[jpbranch 941f679] work around Windows 7 and Microsoft Office IME 2010 issue. nvdajp 32145
2013-10-16 18:12 Updated by: nishimoto
  • Status Update from Open to Closed
  • Ticket Close date is changed to 2013-10-16 18:12

Attachment File List

No attachments

Edit

Please login to add comment to this ticket » Login