diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/google/protobuf/repeated_field.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/google/protobuf/repeated_field.h b/src/google/protobuf/repeated_field.h index 5a2fb409..14f46298 100644 --- a/src/google/protobuf/repeated_field.h +++ b/src/google/protobuf/repeated_field.h @@ -1125,7 +1125,9 @@ template <typename Element> inline typename RepeatedField<Element>::iterator RepeatedField<Element>::erase( const_iterator first, const_iterator last) { size_type first_offset = first - cbegin(); - Truncate(std::copy(last, cend(), begin() + first_offset) - cbegin()); + if (first != last) { + Truncate(std::copy(last, cend(), begin() + first_offset) - cbegin()); + } return begin() + first_offset; } |