File tree Expand file tree Collapse file tree 1 file changed +18
-2
lines changed Expand file tree Collapse file tree 1 file changed +18
-2
lines changed Original file line number Diff line number Diff line change @@ -16,15 +16,31 @@ public class JSContext {
16
16
let context : UnsafeMutableRawPointer
17
17
var template : UnsafeMutableRawPointer
18
18
19
+ let unowned : Bool
20
+
21
+ public init (
22
+ isolate: UnsafeMutableRawPointer ,
23
+ context: UnsafeMutableRawPointer ,
24
+ template: UnsafeMutableRawPointer )
25
+ {
26
+ self . unowned = true
27
+ self . isolate = isolate
28
+ self . context = context
29
+ self . template = template
30
+ }
31
+
19
32
public init ( isolate: UnsafeMutableRawPointer ) {
33
+ self . unowned = false
20
34
self . isolate = isolate
21
35
self . template = CV8 . createTemplate ( isolate)
22
36
self . context = CV8 . createContext ( isolate, template)
23
37
}
24
38
25
39
deinit {
26
- CV8 . disposeTemplate ( template)
27
- CV8 . disposeContext ( context)
40
+ if !unowned {
41
+ CV8 . disposeTemplate ( template)
42
+ CV8 . disposeContext ( context)
43
+ }
28
44
}
29
45
}
30
46
You can’t perform that action at this time.
0 commit comments