gilmour 0.2.6 → 0.2.7

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
  SHA1:
3
- metadata.gz: 953ebae15dad5c41f22fc71449ac3b865a44741b
4
- data.tar.gz: 20dbd6095ba30100eb5cd9c06d1b3711f9a6b4c4
3
+ metadata.gz: 3bb536ca3fba5d81c5ab8ae282e7eeb3a6b1cefe
4
+ data.tar.gz: 543fd382d9c4e3176cab664c7a10fe839775740d
5
5
  SHA512:
6
- metadata.gz: 9455f2b041a9dcfc5889ed27f142382cca6c2940ba645fb6f90c754d716cbad399b5bb54440bf4a465c973080acf504a7df72f2b6145d30fbb405c494f3b8040
7
- data.tar.gz: c12c83d3105cfe1cdac268d4be5c725101e3e23aa3cd060f35bbc5894432c819949b003ffabb92ade45fbd3966fdfb500620aca8bea78a6574a1cfbf4ea508b9
6
+ metadata.gz: cd60a017a32fb69becd5a751cb9a2f06189244cac16910638469168b3123611c1fe39c20913a81fedd54d8323d455b455f1fdb76da7a10ce5ae7f1c4406dc59d
7
+ data.tar.gz: 8816bde67db14712c95f62c3970308615a1d25d82ec63a8b26ac6fca18575a5be48f5ff7744039ceea664c3728888d8f8133c11b008e1d42d29647d697edefa2
@@ -1,6 +1,7 @@
1
1
  module Gilmour
2
2
  class Waiter
3
3
  def initialize
4
+ @done = false
4
5
  @waiter_m = Mutex.new
5
6
  @waiter_c = ConditionVariable.new
6
7
  end
@@ -10,11 +11,14 @@ module Gilmour
10
11
  end
11
12
 
12
13
  def signal
13
- synchronize { @waiter_c.signal }
14
+ synchronize do
15
+ @done = true
16
+ @waiter_c.signal
17
+ end
14
18
  end
15
19
 
16
20
  def wait(timeout=nil)
17
- synchronize { @waiter_c.wait(@waiter_m, timeout) }
21
+ synchronize { @waiter_c.wait(@waiter_m, timeout) unless @done }
18
22
  end
19
23
  end
20
24
  end
@@ -1,6 +1,7 @@
1
1
 
2
2
  class Waiter
3
3
  def initialize
4
+ @done = false
4
5
  @waiter_m = Mutex.new
5
6
  @waiter_c = ConditionVariable.new
6
7
  end
@@ -10,11 +11,14 @@ class Waiter
10
11
  end
11
12
 
12
13
  def signal
13
- synchronize { @waiter_c.signal }
14
+ synchronize do
15
+ @done = true
16
+ @waiter_c.signal
17
+ end
14
18
  end
15
19
 
16
20
  def wait(timeout=nil)
17
- synchronize { @waiter_c.wait(@waiter_m, timeout) }
21
+ synchronize { @waiter_c.wait(@waiter_m, timeout) unless @done }
18
22
  end
19
23
  end
20
24
 
data/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Gilmour
2
- VERSION = '0.2.6'
2
+ VERSION = '0.2.7'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gilmour
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.6
4
+ version: 0.2.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aditya Godbole