一日一コード 42.恐るべしWAVE

なんか waveOut関数とかメッセージとか状態変数管理とかもう分けわかんない。
くそ。なんで MessageBox()呼んだら正常な状態になるんだ?これがハイゼンベルグバグというやつか?


if( this->pause )
{ //一時停止を解除する。
waveOutRestart();
MessageBox(); //これ入れるとなぜか直る。
this->pause = FALSE;
}else{
...//一時停止する。
this->pause = TRUE; //この値をTRUEにしているのはここだけ。
}
しかもこのコード、場合によって一気に三回も四回も呼ばれることがある。
なんじゃこりゃあ!

一日一コード
WAVEファイルを堪能する。(9) 〜バッファリングとおぞましいWAVE API〜