tanker-core 2.4.3.alpha.2 → 2.5.0.beta.3
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e4e01da60bbbc52c1c527a00344ce7cdac3d1acb7bfd46b679c0beeba60d8469
|
4
|
+
data.tar.gz: ed003885d88f8c720a9db493b7a7fc9bd702d59b53aa62d541639d83a3bd13f3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 805e93e430a5c42e5644018935cc021e0d51fe997e0dac9b70441317a73c9c4999364143a9a80337b37aea4a102186b1c34a03d423e4091c23f93a3d5cb893eb
|
7
|
+
data.tar.gz: 3f41642ebc8040864536939558602b9afba6013164400c718378a1d1a5d3a2476bc8ca2d8664d9ae4c91c54ce36c3cb74ea059078dbf9bbc8084a5fc1bd71a0a
|
data/lib/tanker/core/init.rb
CHANGED
@@ -8,8 +8,11 @@ module Tanker
|
|
8
8
|
def initialize(options)
|
9
9
|
@revoke_event_handlers = Set.new
|
10
10
|
@ctanker = CTanker.tanker_create(options).get
|
11
|
+
@freed = false
|
11
12
|
ctanker_addr = @ctanker.address
|
12
13
|
ObjectSpace.define_finalizer(@ctanker) do |_|
|
14
|
+
next if @freed
|
15
|
+
|
13
16
|
CTanker.tanker_destroy(FFI::Pointer.new(:void, ctanker_addr)).get
|
14
17
|
end
|
15
18
|
|
@@ -19,6 +22,18 @@ module Tanker
|
|
19
22
|
CTanker.tanker_event_connect(@ctanker, CTanker::CTankerEvent::DEVICE_REVOKED, @device_revoked_handler, nil).get
|
20
23
|
end
|
21
24
|
|
25
|
+
def free
|
26
|
+
@freed = true
|
27
|
+
CTanker.tanker_destroy(@ctanker).get
|
28
|
+
@ctanker = nil
|
29
|
+
|
30
|
+
public_methods(false).each do |method|
|
31
|
+
send(:define_singleton_method, method) do |*_|
|
32
|
+
raise "using Tanker::Core##{method} after free"
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
22
37
|
def self.set_log_handler(&block) # rubocop:disable Naming/AccessorMethodName
|
23
38
|
@log_handler = lambda do |clog|
|
24
39
|
block.call LogRecord.new clog[:category], clog[:level], clog[:file], clog[:line], clog[:message]
|
data/lib/tanker/core/version.rb
CHANGED
Binary file
|
Binary file
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: tanker-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.5.0.beta.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Tanker team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-07-
|
11
|
+
date: 2020-07-28 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|
@@ -188,7 +188,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
188
188
|
- !ruby/object:Gem::Version
|
189
189
|
version: 1.3.1
|
190
190
|
requirements: []
|
191
|
-
rubygems_version: 3.
|
191
|
+
rubygems_version: 3.0.3
|
192
192
|
signing_key:
|
193
193
|
specification_version: 4
|
194
194
|
summary: Ruby SDK for Tanker
|