OSDN Git Service

Target の Dispose 忘れを修正。
authorくまかみ工房 <kumakamikoubou@gmail.com>
Fri, 7 Oct 2016 04:25:25 +0000 (13:25 +0900)
committerくまかみ工房 <kumakamikoubou@gmail.com>
Fri, 7 Oct 2016 04:25:25 +0000 (13:25 +0900)
FDK24/メディア/描画可能画像.cs

index 4990614..c561cad 100644 (file)
@@ -35,17 +35,19 @@ namespace FDK.メディア
                /// <param name="描画アクション">Bitmap に対して行いたい操作。</param>
                public void 画像へ描画する( FDK.メディア.デバイスリソース dr, Action<SharpDX.Direct2D1.DeviceContext1, SharpDX.Direct2D1.Bitmap1> 描画アクション )
                {
-                       var 旧ターゲット = dr.D2DContext1.Target;
-                       try
+                       using( var 旧ターゲット = dr.D2DContext1.Target )
                        {
-                               dr.D2DContext1.Target = this.Bitmap;
-                               FDK.Utilities.D2DBatchDraw( dr.D2DContext1, () => {
-                                       描画アクション( dr.D2DContext1, this.Bitmap );
-                               } );
-                       }
-                       finally
-                       {
-                               dr.D2DContext1.Target = 旧ターゲット;
+                               try
+                               {
+                                       dr.D2DContext1.Target = this.Bitmap;
+                                       FDK.Utilities.D2DBatchDraw( dr.D2DContext1, () => {
+                                               描画アクション( dr.D2DContext1, this.Bitmap );
+                                       } );
+                               }
+                               finally
+                               {
+                                       dr.D2DContext1.Target = 旧ターゲット;
+                               }
                        }
                }
        }