File tree Expand file tree Collapse file tree 1 file changed +11
-4
lines changed Expand file tree Collapse file tree 1 file changed +11
-4
lines changed Original file line number Diff line number Diff line change @@ -390,7 +390,7 @@ def puts(*args)
390
390
Truffle ::IOOperations . puts ( self , *args )
391
391
end
392
392
393
- def read ( length = nil , buffer = nil )
393
+ def read ( length = nil , buffer = nil )
394
394
check_readable
395
395
d = @__data__
396
396
pos = d . pos
@@ -522,7 +522,7 @@ def sync=(val)
522
522
val
523
523
end
524
524
525
- def sysread ( length = nil , buffer = '' )
525
+ def sysread ( length = nil , buffer = '' )
526
526
str = read ( length , buffer )
527
527
528
528
if str . nil?
@@ -535,8 +535,15 @@ def sysread(length=nil, buffer='')
535
535
536
536
alias_method :readpartial , :sysread
537
537
538
- def read_nonblock ( length , buffer = '' , **options )
539
- sysread ( length , buffer )
538
+ def read_nonblock ( length , buffer = '' , exception : true )
539
+ str = read ( length , buffer )
540
+
541
+ if exception and str . nil?
542
+ buffer . clear
543
+ raise EOFError , 'end of file reached'
544
+ end
545
+
546
+ str
540
547
end
541
548
542
549
def tell
You can’t perform that action at this time.
0 commit comments