OSDN Git Service

アプリの終了時に、進行スレッドがnull参照例外を出すことがあるミスを修正。
authorくまかみ工房 <kumakamikoubou@gmail.com>
Wed, 31 May 2017 10:18:16 +0000 (19:18 +0900)
committerくまかみ工房 <kumakamikoubou@gmail.com>
Wed, 31 May 2017 10:19:38 +0000 (19:19 +0900)
FDK/メディア/ビットマップ付きテクスチャ.cs
StrokeStyleT/App.cs

index f2e739e..f917d60 100644 (file)
@@ -62,7 +62,6 @@ namespace FDK.メディア
                                        }
                                        finally
                                        {
-
                                                dc.Target = 旧ターゲット;
                                        }
                                }
index 05d157e..a5d8c8b 100644 (file)
@@ -414,10 +414,13 @@ namespace SST
 
                        this._進行Status.現在の状態 = TriStateEvent.状態種別.ON;
 
-                       while( this._進行Status.現在の状態 == TriStateEvent.状態種別.ON )
+                       while( true )
                        {
                                lock( this._進行描画間同期 )
                                {
+                                       if( this._進行Status.現在の状態 != TriStateEvent.状態種別.ON )       // lock してる間に状態が変わることがあるので注意。
+                                               break;
+
                                        //App.入力管理.すべての入力デバイスをポーリングする();
                                        // --> 入力ポーリングの挙動はステージごとに異なるので、それぞれのステージ内で行う。
 
@@ -439,7 +442,7 @@ namespace SST
                {
                        lock( this._進行描画間同期 )
                        {
-                               if( this._AppStatus != AppStatus.å®\9fè¡\8c中 )  // ä¸\8aè¨\98lock中ã\81«çµ\82äº\86ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81\8cã\81\82ã\82\8bã\81®ã\81§それをはじく。
+                               if( this._AppStatus != AppStatus.å®\9fè¡\8c中 )  // ä¸\8aè¨\98lock中ã\81«çµ\82äº\86ã\81\95ã\82\8cã\81¦ã\81\84ã\82\8bå ´å\90\88ã\81\8cã\81\82ã\82\8cã\81°それをはじく。
                                        return;
 
                                #region " (1) D3Dデバイスが消失していれば再構築する。"
@@ -739,8 +742,6 @@ namespace SST
                {
                        using( Log.Block( FDKUtilities.現在のメソッド名 ) )
                        {
-                               // グローバルリソースのうち、デバイス依存リソースを持つものが対象。
-
                                if( App.ユーザ管理.活性化していない )
                                        App.ユーザ管理.活性化する( App.グラフィックデバイス );