レベル調節でエラー

Issue #62 resolved
takuto_cw created an issue

こんばんは。原因が特定できないエラーに遭遇したので、こちらに投下させていただきます。 というのも、同じ操作をしても、エラーが出るときと出ないときがあるのです。 CardWirthPy_20130627c + winXP で確認しました。

エラーに遭遇する方法は、Lv15キャラ(高レベルの方がやりやすい)を作り、宿帳に配置します。 情報ボタンをクリック、編集タブを開いて
 「レベルを調節する」 → Lvを1下げる → 登録
を何度も繰り返します。Lvが1まで行ったら、また15に戻してやり直し。 するとたまに、次のようなエラーが出ます。

Traceback (most recent call last):
 File "cw\dialog\charainfo.pyo", line 586, in OnLeftUp
 File "cw\dialog\charainfo.pyo", line 376, in draw
 File "cw\dialog\select.pyo", line 1204, in update_character
 File "cw\data.pyo", line 1084, in create_advheader
 File "cw\data.pyo", line 2077, in yadoxml2element
 File "cw\data.pyo", line 2130, in xml2element
 File "cw\data.pyo", line 2240, in parse
 File "cw\data.pyo", line 2253, in parse_file
xml.parsers.expat.ExpatError: no element found: line 1, column 0. file: Data/Temp/Yado/(宿の名前)/Adventurer/(PCの名前).xml

お時間ございましたら、ご確認いただけますか? どうぞよろしくお願いします。

Comments (4)

  1. k4nagatsuki repo owner

    発生のランダムさから見るに、どうもスレッド間の処理のタイミングの違いによるエラーっぽいですね。

    調べてみます。しばらくお待ちください。

  2. k4nagatsuki repo owner

    やはりスレッド間の処理のすれ違いでした。

    レベル調節後にpygameのスレッドでそのキャラクターのXMLデータを保存しているのですが、同時にwxPython側のスレッドでキャラクターのXMLデータを読み込んで表示を更新する処理が走っており、それらのタイミングがバッティングするとこのようなエラーになるようです。

    最新のバージョンで直ったと思います。再現するかの確認も大変そうで申し訳ないのですが、ご確認ください。

  3. takuto_cw reporter

    いつもながら、すばやい対応ありがとうございます。

    cardwirthpy_20130701 + winXP で、修正を確認いたしました。

  4. Log in to comment