Use internal_strncpy to copy filename in linux procmaps

Cleaner than using a while loop to copy the string character by character.

Reviewers: alekseyshl, glider

Subscribers: llvm-commits

Differential Revision: https://reviews.llvm.org/D35136

llvm-svn: 307696
This commit is contained in:
Francis Ricci 2017-07-11 19:40:54 +00:00
parent edd53cb652
commit 9fd8a6381c
1 changed files with 5 additions and 6 deletions

View File

@ -62,13 +62,12 @@ bool MemoryMappingLayout::Next(MemoryMappedSegment *segment) {
while (current_ < next_line && *current_ == ' ')
current_++;
// Fill in the filename.
uptr i = 0;
while (current_ < next_line) {
if (segment->filename && i < segment->filename_size - 1)
segment->filename[i++] = *current_;
current_++;
if (segment->filename) {
uptr len = Min((uptr)(next_line - current_), segment->filename_size - 1);
internal_strncpy(segment->filename, current_, len);
segment->filename[len] = 0;
}
if (segment->filename && i < segment->filename_size) segment->filename[i] = 0;
current_ = next_line + 1;
return true;
}