File tree 1 file changed +12
-6
lines changed
1 file changed +12
-6
lines changed Original file line number Diff line number Diff line change @@ -18,6 +18,7 @@ static CoverageTracker()
18
18
_markers = new Dictionary < string , List < string > > ( ) ;
19
19
_markerFileCount = new Dictionary < string , int > ( ) ;
20
20
AppDomain . CurrentDomain . ProcessExit += new EventHandler ( CurrentDomain_ProcessExit ) ;
21
+ AppDomain . CurrentDomain . DomainUnload += new EventHandler ( CurrentDomain_ProcessExit ) ;
21
22
}
22
23
23
24
[ ExcludeFromCoverage ]
@@ -48,17 +49,22 @@ public static void MarkExecuted(string path, string marker)
48
49
[ ExcludeFromCoverage ]
49
50
public static void CurrentDomain_ProcessExit ( object sender , EventArgs e )
50
51
{
51
- foreach ( var kvp in _markers )
52
+ lock ( _markers )
52
53
{
53
- using ( var fs = new FileStream ( $ "{ kvp . Key } _compressed_{ _markerFileCount [ kvp . Key ] } ", FileMode . OpenOrCreate ) )
54
- using ( var gz = new GZipStream ( fs , CompressionMode . Compress ) )
55
- using ( var sw = new StreamWriter ( gz ) )
54
+ foreach ( var kvp in _markers )
56
55
{
57
- foreach ( var line in kvp . Value )
56
+ using ( var fs = new FileStream ( $ "{ kvp . Key } _compressed_{ _markerFileCount [ kvp . Key ] } ", FileMode . OpenOrCreate ) )
57
+ using ( var gz = new GZipStream ( fs , CompressionMode . Compress ) )
58
+ using ( var sw = new StreamWriter ( gz ) )
58
59
{
59
- sw . WriteLine ( line ) ;
60
+ foreach ( var line in kvp . Value )
61
+ {
62
+ sw . WriteLine ( line ) ;
63
+ }
60
64
}
61
65
}
66
+
67
+ _markers . Clear ( ) ;
62
68
}
63
69
}
64
70
}
You can’t perform that action at this time.
0 commit comments