File tree Expand file tree Collapse file tree 3 files changed +4
-4
lines changed
stdlib/public/Backtracing Expand file tree Collapse file tree 3 files changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -42,7 +42,7 @@ struct ArrayImageSource<T>: ImageSource {
4242 throw ArrayImageSourceError . outOfBoundsRead ( addr, requested)
4343 }
4444
45- buffer. copyBytes ( from: $0 [ Int ( addr) ... ] )
45+ buffer. copyBytes ( from: $0 [ Int ( addr) ..< Int ( addr + requested ) ] )
4646 }
4747 }
4848}
Original file line number Diff line number Diff line change @@ -75,7 +75,7 @@ public class CachingMemoryReader<T: MemoryReader>: MemoryReader {
7575 let maxBytes = pageSize - offset
7676 let chunk = min ( remaining, maxBytes)
7777
78- buffer [ done..< done+ chunk] . copyBytes ( from: page [ offset... ] )
78+ buffer [ done..< done+ chunk] . copyBytes ( from: page [ offset..< offset + chunk ] )
7979
8080 offset = 0
8181 done += chunk
Original file line number Diff line number Diff line change @@ -245,8 +245,8 @@ extension MemoryReader {
245245 throw MemserverError ( message: " Unreadable at \( hex ( addr) ) " )
246246 }
247247
248- if done + Int( reply. len) > bytes . count {
249- throw MemserverError ( message: " Overrun at \( hex ( addr) ) trying to read \( bytes . count) bytes " )
248+ if buffer . count - done < Int ( reply. len) {
249+ throw MemserverError ( message: " Overrun at \( hex ( addr) ) trying to read \( buffer . count) bytes " )
250250 }
251251
252252 let ret = try safeRead ( fd,
You can’t perform that action at this time.
0 commit comments