@@ -20,7 +20,6 @@ public sealed class Filter : IEquatable<Filter>
20
20
private readonly FilterCallbacks filterCallbacks ;
21
21
22
22
private GitFilter managedFilter ;
23
- private GCHandle filterHandle ;
24
23
private readonly GitFilterSafeHandle nativeFilter ;
25
24
26
25
private GitFilter . git_filter_apply_fn applyCallback ;
@@ -29,17 +28,6 @@ public sealed class Filter : IEquatable<Filter>
29
28
private GitFilter . git_filter_shutdown_fn shutdownCallback ;
30
29
private GitFilter . git_filter_cleanup_fn cleanCallback ;
31
30
32
- private IntPtr applyCallbackHandle ;
33
- private IntPtr checkCallbackHandle ;
34
- private IntPtr initCallbackHandle ;
35
- private GCHandle checkCallbackGCHandle ;
36
- private GCHandle applyCallbackGCHandle ;
37
- private GCHandle initCallbackGCHandle ;
38
- private IntPtr shutdownCallbackHandle ;
39
- private IntPtr cleanCallbackHandle ;
40
- private GCHandle shutdownCallbackGCHandle ;
41
- private GCHandle cleanCallbackGCHandle ;
42
-
43
31
/// <summary>
44
32
/// Initializes a new instance of the <see cref="Filter"/> class.
45
33
/// And allocates the filter natively.
@@ -62,30 +50,18 @@ public Filter(string name, string attributes, int version, FilterCallbacks filte
62
50
shutdownCallback = ShutdownCallback ;
63
51
cleanCallback = CleanUpCallback ;
64
52
65
- checkCallbackHandle = Marshal . GetFunctionPointerForDelegate ( checkCallback ) ;
66
- applyCallbackHandle = Marshal . GetFunctionPointerForDelegate ( applyCallback ) ;
67
- initCallbackHandle = Marshal . GetFunctionPointerForDelegate ( initCallback ) ;
68
- shutdownCallbackHandle = Marshal . GetFunctionPointerForDelegate ( shutdownCallback ) ;
69
- cleanCallbackHandle = Marshal . GetFunctionPointerForDelegate ( cleanCallback ) ;
70
-
71
- checkCallbackGCHandle = GCHandle . Alloc ( checkCallbackHandle , GCHandleType . Pinned ) ;
72
- applyCallbackGCHandle = GCHandle . Alloc ( applyCallbackHandle , GCHandleType . Pinned ) ;
73
- initCallbackGCHandle = GCHandle . Alloc ( initCallbackHandle , GCHandleType . Pinned ) ;
74
- shutdownCallbackGCHandle = GCHandle . Alloc ( shutdownCallbackHandle , GCHandleType . Pinned ) ;
75
- cleanCallbackGCHandle = GCHandle . Alloc ( cleanCallbackHandle , GCHandleType . Pinned ) ;
76
53
77
54
managedFilter = new GitFilter
78
55
{
79
56
attributes = EncodingMarshaler . FromManaged ( Encoding . UTF8 , attributes ) ,
80
57
version = ( uint ) version ,
81
- init = initCallbackHandle ,
82
- apply = applyCallbackHandle ,
83
- check = checkCallbackHandle ,
84
- shutdown = shutdownCallbackHandle ,
85
- cleanup = cleanCallbackHandle
58
+ init = initCallback ,
59
+ apply = applyCallback ,
60
+ check = checkCallback ,
61
+ shutdown = shutdownCallback ,
62
+ cleanup = cleanCallback
86
63
} ;
87
64
88
- filterHandle = GCHandle . Alloc ( managedFilter , GCHandleType . Pinned ) ;
89
65
nativeFilter = new GitFilterSafeHandle ( managedFilter ) ;
90
66
}
91
67
@@ -136,36 +112,6 @@ public void Register()
136
112
public void Deregister ( )
137
113
{
138
114
Proxy . git_filter_unregister ( name ) ;
139
-
140
- if ( filterHandle . IsAllocated )
141
- {
142
- filterHandle . Free ( ) ;
143
- }
144
-
145
- if ( applyCallbackGCHandle . IsAllocated )
146
- {
147
- applyCallbackGCHandle . Free ( ) ;
148
- }
149
-
150
- if ( checkCallbackGCHandle . IsAllocated )
151
- {
152
- checkCallbackGCHandle . Free ( ) ;
153
- }
154
-
155
- if ( initCallbackGCHandle . IsAllocated )
156
- {
157
- initCallbackGCHandle . Free ( ) ;
158
- }
159
-
160
- if ( shutdownCallbackGCHandle . IsAllocated )
161
- {
162
- shutdownCallbackGCHandle . Free ( ) ;
163
- }
164
-
165
- if ( cleanCallbackGCHandle . IsAllocated )
166
- {
167
- cleanCallbackGCHandle . Free ( ) ;
168
- }
169
115
}
170
116
171
117
/// <summary>
0 commit comments