diff options
| author | David Majnemer <david.majnemer@gmail.com> | 2016-05-27 21:25:05 +0000 | 
|---|---|---|
| committer | David Majnemer <david.majnemer@gmail.com> | 2016-05-27 21:25:05 +0000 | 
| commit | 0364f67f61bdb322972e59c3483612945bc980bc (patch) | |
| tree | 7e7f78614bcc980cbb87e02a07c52a1e5c9abf99 | |
| parent | 2bd4f8b66bbb0fb43d4dea624008a716478809be (diff) | |
| download | bcm5719-llvm-0364f67f61bdb322972e59c3483612945bc980bc.tar.gz bcm5719-llvm-0364f67f61bdb322972e59c3483612945bc980bc.zip  | |
Don't iterate endlessly if an error occurs.
llvm-svn: 271048
| -rw-r--r-- | llvm/include/llvm/DebugInfo/CodeView/StreamArray.h | 9 | 
1 files changed, 5 insertions, 4 deletions
diff --git a/llvm/include/llvm/DebugInfo/CodeView/StreamArray.h b/llvm/include/llvm/DebugInfo/CodeView/StreamArray.h index caf70db1fdf..7e4296c5209 100644 --- a/llvm/include/llvm/DebugInfo/CodeView/StreamArray.h +++ b/llvm/include/llvm/DebugInfo/CodeView/StreamArray.h @@ -93,12 +93,13 @@ public:      if (!Array || IterRef.getLength() == 0 || ThisLen == 0)        return *this;      IterRef = IterRef.drop_front(ThisLen); -    if (IterRef.getLength() == 0) { -      Array = nullptr; +    if (IterRef.getLength() == 0)        ThisLen = 0; -    } else { +    else +      // TODO: We should report an error if Extract fails.        ThisLen = Extract(IterRef, ThisValue); -    } +    if (ThisLen == 0) +      Array = nullptr;      return *this;    }  | 

