X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FSupport%2FStringRefMemoryObject.cpp;h=e035ed1d2ef31fd69a85b3e454a0647eafdca46f;hb=be63d589633bbfa068b923c60eaaeee1b27647c5;hp=5db11e918cd634d1e2ab7d319952f11d55230f9c;hpb=ef99356dfebb96f6f90efb912c2877214bad060e;p=oota-llvm.git diff --git a/lib/Support/StringRefMemoryObject.cpp b/lib/Support/StringRefMemoryObject.cpp index 5db11e918cd..e035ed1d2ef 100644 --- a/lib/Support/StringRefMemoryObject.cpp +++ b/lib/Support/StringRefMemoryObject.cpp @@ -20,15 +20,10 @@ int StringRefMemoryObject::readByte(uint64_t Addr, uint8_t *Byte) const { int StringRefMemoryObject::readBytes(uint64_t Addr, uint64_t Size, - uint8_t *Buf, - uint64_t *Copied) const { - if (Addr >= Base + getExtent() || Addr < Base) - return -1; + uint8_t *Buf) const { uint64_t Offset = Addr - Base; - if (Size > getExtent() - Offset) - Size = getExtent() - Offset; + if (Addr >= Base + getExtent() || Offset + Size > getExtent() || Addr < Base) + return -1; memcpy(Buf, Bytes.data() + Offset, Size); - if (Copied) - *Copied = Size; return 0; }