xlogin 0.10.2 → 0.10.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: ef6f25abd714085af68ec99c9fbf3ecca48e7e74266ba340034cc78702e08985
4
- data.tar.gz: 19b209255ce679e5b383528c554a6c569e82fc3ff7a4c558db20e42835a0f9c3
3
+ metadata.gz: dfab506409777ce24bc1e5351aba0425cb2479eeafc5de190ee959c1ab4c73db
4
+ data.tar.gz: 7fc2e8339ae809ab0f7dac7e06d4d5231d31b50710053bcb25fdd321fc86c35c
5
5
  SHA512:
6
- metadata.gz: f7014a3f05c695402cd66e11c221f3c321dfe9482349088e9e5a00e102f6b3366206e247ad863657801e12bc70140bd0cbc41a863ad39dfaf3a3c38361479829
7
- data.tar.gz: 2186764882c2d32fa8b43d1ed83996604a5346fee562d3a9086dc4cb4a255156a2d978e22d07f0288a538a16bf1fb030ec0470bfb8c5aaa21432a92c55dd04a4
6
+ metadata.gz: 0e1e635565895b322b5990ab006215670d12363c2ddf893f64acf3a457a3cb6e992b70d9cb70ec092306314f6c3c6d371644990b4ce98e62be79be39b10df748
7
+ data.tar.gz: d95d17330cbbbc9fc58b0605c5b7af1d1f70a6317fb53c20e09d6c6336602a0f5047bfea60c70b1dbd83732fcaddc8d33e96983b4bcb680fd43a74e9e26a92a1
@@ -58,10 +58,16 @@ module Xlogin
58
58
 
59
59
  private
60
60
  def deq
61
- unless session = try_create
62
- session, timer = @queue.deq
63
- timer.kill
61
+ @mutex.synchronize do
62
+ if @queue.empty? && @created < @size
63
+ @created += 1
64
+ return Xlogin.get(@args, **@opts)
65
+ end
64
66
  end
67
+
68
+ session, timer = @queue.deq
69
+ timer.kill
70
+
65
71
  session
66
72
  end
67
73
 
@@ -74,15 +80,6 @@ module Xlogin
74
80
  @queue.enq [session, timer]
75
81
  end
76
82
 
77
- def try_create
78
- @mutex.synchronize do
79
- return unless @created < @size
80
-
81
- @created += 1
82
- Xlogin.get(@args, **@opts)
83
- end
84
- end
85
-
86
83
  def destroy(session)
87
84
  @mutex.synchronize do
88
85
  session.close rescue nil
@@ -1,3 +1,3 @@
1
1
  module Xlogin
2
- VERSION = "0.10.2"
2
+ VERSION = "0.10.3"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: xlogin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.2
4
+ version: 0.10.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - haccht
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-28 00:00:00.000000000 Z
11
+ date: 2019-01-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: net-telnet