girl 0.66.0 → 0.67.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of girl might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1b2ece41d566cc27562dff36a48b1c53c53000390587b5e424bc38e78636e74c
4
- data.tar.gz: c3d80d9b98804d0f1f37cf479052fc5c68b7cf907c800813cf3dd0d9a1691855
3
+ metadata.gz: 9f8e5816785b5a946fbf35da638fc06a6e496704e3271153640ceb4301a27a84
4
+ data.tar.gz: 12813e957b5cdb5cbf726b5078792651197c5e84cfeaa4251c491897e6017a56
5
5
  SHA512:
6
- metadata.gz: c2c0d92f7dbd582f04a8d49e5285d863e790070a3ffd2c08313695f66388df436fa59441b9fef992600e1611a39053ea3df8b3f453004e2bcbc0ad126c4e257e
7
- data.tar.gz: e4baabb1843d03f27101e43407927febdf0dd3a1917a30ae017297c75cb5336a32f1fb033bc484ffc0f6cf053a4b3ea63ed8726b4aece5ae662bd72767ff730d
6
+ metadata.gz: 9d3721a009010761bbcc196a9e650e801cecdd287410cd118981e0ceaeb1225d720f592fedfb988a5341229e9eeef53c94ab949a9562b3ad659d53d40481b9ca
7
+ data.tar.gz: 18b23dc9a36b43d6a9aeda602fea61398d236d1fc2baf680d312f048e2f5270479aeb88b2b7c6b445ab98e146c8444624434dfc3a91f3608708af85afb598e22
@@ -180,6 +180,11 @@ module Girl
180
180
  puts "p#{ Process.pid } #{ Time.new } resume tun"
181
181
  @tun_info[ :paused ] = false
182
182
  add_write( @tun )
183
+
184
+ @tun_info[ :src_exts ].each do | _, src_ext |
185
+ add_write( src_ext[ :src ] )
186
+ end
187
+
183
188
  need_trigger = true
184
189
  end
185
190
 
@@ -763,7 +768,15 @@ module Girl
763
768
 
764
769
  if data.empty?
765
770
  if src_info[ :is_closing ]
766
- close_src( src )
771
+ if @tun.closed?
772
+ close_src( src )
773
+ elsif @tun_info[ :paused ]
774
+ @writes.delete( src )
775
+ elsif !@writes.include?( @tun )
776
+ # 转发光了,正式关闭
777
+ # puts "debug2 close src after tun empty"
778
+ close_src( src )
779
+ end
767
780
  else
768
781
  @writes.delete( src )
769
782
  end
@@ -171,6 +171,11 @@ module Girl
171
171
  puts "p#{ Process.pid } #{ Time.new } resume tund"
172
172
  tund_info[ :paused ] = false
173
173
  add_write( tund )
174
+
175
+ tund_info[ :dst_exts ].each do | _, dst_ext |
176
+ add_write( dst_ext[ :dst ] )
177
+ end
178
+
174
179
  need_trigger = true
175
180
  end
176
181
  end
@@ -560,7 +565,19 @@ module Girl
560
565
 
561
566
  if data.empty?
562
567
  if dst_info[ :is_closing ]
563
- close_dst( dst )
568
+ if dst_info[ :tund ].closed?
569
+ close_dst( dst )
570
+ else
571
+ tund_info = @tund_infos[ dst_info[ :tund ] ]
572
+
573
+ if tund_info[ :paused ]
574
+ @writes.delete( dst )
575
+ elsif !@writes.include?( dst_info[ :tund ] )
576
+ # 转发光了,正式关闭
577
+ # puts "debug2 close dst after tund empty"
578
+ close_dst( dst )
579
+ end
580
+ end
564
581
  else
565
582
  @writes.delete( dst )
566
583
  end
@@ -1,3 +1,3 @@
1
1
  module Girl
2
- VERSION = '0.66.0'.freeze
2
+ VERSION = '0.67.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: girl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.66.0
4
+ version: 0.67.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - takafan
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-06-26 00:00:00.000000000 Z
11
+ date: 2020-06-28 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: while internet is evil, here's a girl.
14
14
  email: