こんにちは、川合です。伝言板が復旧しましたが、もとのスレッドが
なくなっているので、相変わらず、こっちに書きます。
かりんさん、見ているかなあ?
Hidemi KAWAI は 2003/04/12 12:59:42 の「[OSASK 5978] Re: BOARD:
mswp08 β 3 リリース」で書きました:
> それで、ソースをざっとみたところ、レベル変更時のウィンドウクロ
>ーズ&再オープンなどに少々問題があるようです。具体的にどのように
>直せばいいのかを詳しく説明したいのですが、もしかしたらそのうちに
>OSASK伝言板が回復するかもしれず、それならその時に書きたいので、
>しばらくおまちください。直らなければ、ML上で説明します。
それでは早速、問題点の指摘を。
・ウィンドウはクローズしてからすぐにオープンしてはいけない。
(そういう場合は、クローズ完了を待つ必要がある)
・ウィンドウやテキストボックスをクローズしても、構造体がfreeさ
れるわけではないので、何度もAUTOMALLOCしているとメモリがなく
なってしまう。
(これはfreeしてやる方法と、最初にmallocした領域を何度も使う
方法がある。freeしてすぐにmallocするのはメモリ効率が悪くな
りやすいので、ここでは、最初にmallocして以降はそれを繰り返
し利用するスタイルをおすすめします)
・level3で画面上の機雷の数を数えてみると、99個よりもずっと多い
・・・。
(これはcellの[]の中の計算の書き間違い)
さらにこれは問題ではないのですが、もしちょっとサイズが気になる
のでしたら、手軽な割には効果のあるテクニックを紹介しておきます(4
行追加するだけです)。
以上の具体的な修正例はここに書くには長いので、以下のファイルを
ダウンロードしてください。
http://osask.ne.nu/bugfix00.lzh (1.31KB)
もちろん、この修正案をそのまま使ってもいいですし、意を汲んで自分
の好きなように使ってもかまいません。
あとは細かいところをいじれば、よりサイズを小さくすることはでき
ます。しかしまあ、もうそんなに大きくは改善しないような気もします
。
それでは。
--
川合 秀実(KAWAI Hidemi)
OSASK計画代表 / システム設計開発担当
E-mail:kawai !Atmark! imasy.org
Homepage http://www.imasy.org/~kawai/