バグ:デバッガで数値コモンの値を直接変更時、極端に大きい数字や全角数値などを入れると終了時エラーログ

Issue #932 resolved
暗黒 騎士 created an issue

#893が自分の方のフォークで再現してしまったので原因を調べている最中に確認しました。


Version : 4.3 (64-bit) / 2020-04-12 13:36:33

DateTime: 2020-04-23 17:51:02
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\numctrl.py", line 1258, in OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 2963, in _OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 5375, in _CheckValid
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4782, in _applyFormatting
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4959, in _getSignedValue
IndexError: string index out of range
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 3154, in _OnChar
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4782, in _applyFormatting
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4959, in _getSignedValue
IndexError: string index out of range
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\numctrl.py", line 1258, in OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 2963, in _OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 5375, in _CheckValid
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4782, in _applyFormatting
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4959, in _getSignedValue
IndexError: string index out of range
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 3154, in _OnChar
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4782, in _applyFormatting
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4959, in _getSignedValue
IndexError: string index out of range
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\numctrl.py", line 1258, in OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 2963, in _OnTextChange
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 5375, in _CheckValid
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4782, in _applyFormatting
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4959, in _getSignedValue
IndexError: string index out of range
Traceback (most recent call last):
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 5576, in _OnKillFocus
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4306, in _AdjustField
File "C:\Program Files\Python37\lib\site-packages\wx\lib\masked\maskededit.py", line 4437, in _adjustFloat
ValueError: not enough values to unpack (expected 2, got 1)

Comments (4)

  1. k4nagatsuki repo owner

    ご報告ありがとうございます。

    内容を見る限り完全にwxPythonのMaskedTextCtrlのバグのようです。時間のある時に報告しておきます。

    確実に再現する値があると助かります。

  2. 暗黒 騎士 reporter

    111とか222でほぼ確定再現します。

    というか開いた時の既定値として、数値の横に7つぐらい謎の空白文字がある感じなんですが、これはなんというか、データ入力ソフト的または数学的な作法・常識的な仕様なんでしょうか? 自分の感覚的には変な感じがします。

  3. k4nagatsuki repo owner

    pull request #17

    それはwx.lib.masked.numctrl.NumCtrlの仕様です。あれこれ試してみましたが、どうもこのコントロールは単純に出来が悪く、IMEオンの状態を考慮できていないようです。

    とりあえず暫定の回避策として普通のTextCtrlを使うように変更しておきます。

  4. k4nagatsuki repo owner

    近い将来NumCtrlが使えるようになるとは思えないので、今の状態で一旦完了にしておきます。 問題があったら再オープンしてください。

  5. Log in to comment