mumurik/xyzzy — pull request #31 by xyzzy-17-638 (2012-03-19 22:04:52+00:00)
Title: FIX:Issue#24 (Sometimes, $XYZZY/xyzzy.ini is not loaded even it exist)

Issue #24 (Part17, 814) $XYZZY/xyzzy.ini が読み込まれない場合がある
https://bitbucket.org/mumurik/xyzzy/issue/24/part17-814-xyzzy-xyzzyini
について、解消するものです。

２つ挙げた方法のうち、xyzzy.exe が WaitForInputIdle() に対して期待通りに動作する方法にしました。

再起動的な処理の典型的な記述方法は以下のようになります

```lisp
(progn (prepare-for-kill-xyzzy)
(call-process "xyzzy.exe" :wait 60)
(kill-xyzzy))
```

変更点は以下の２点です

* 新規の Lisp 関数 prepare-for-kill-xyzzy を追加
* 終了時に保存する内容を、呼び出されたタイミングで明示的に xyzzy.ini に書き込む
* xyzzy の起動時に初期化の終了を待ってから quit_thread_entry() が動作するように変更
* statupEvent の追加、初期設定、イベントシグナル、イベント待ち処理の追加

怪しい点は

* WaitForSingleObject() のタイムアウト時間 (60秒) に何の根拠も無い