summaryrefslogtreecommitdiff
path: root/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
diff options
context:
space:
mode:
authorAlexey Samsonov <samsonov@google.com>2012-09-05 07:23:44 +0000
committerAlexey Samsonov <samsonov@google.com>2012-09-05 07:23:44 +0000
commit1dc4cf7e253aefa3ce3bd4a1d349a13647e8b2ea (patch)
tree9fd96fb2e889f04e8a5f654248338c8747da49d6 /lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
parent38e853db8353285da16416885da42219fee701c4 (diff)
downloadcompiler-rt-1dc4cf7e253aefa3ce3bd4a1d349a13647e8b2ea.tar.gz
compiler-rt-1dc4cf7e253aefa3ce3bd4a1d349a13647e8b2ea.tar.bz2
compiler-rt-1dc4cf7e253aefa3ce3bd4a1d349a13647e8b2ea.tar.xz
[Sanitizer] Remove implicit conversion of InternalScopedBuffer<T> to T*
git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@163197 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc')
-rw-r--r--lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc12
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc b/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
index ab2b01c8..7d0fddb4 100644
--- a/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
+++ b/lib/tsan/rtl/tsan_symbolize_addr2line_linux.cc
@@ -87,7 +87,7 @@ static int dl_iterate_phdr_cb(dl_phdr_info *info, size_t size, void *arg) {
DlIteratePhdrCtx *ctx = (DlIteratePhdrCtx*)arg;
InternalScopedBuffer<char> tmp(128);
if (ctx->is_first) {
- internal_snprintf(tmp, tmp.size(), "/proc/%d/exe", GetPid());
+ internal_snprintf(tmp.data(), tmp.size(), "/proc/%d/exe", GetPid());
info->dlpi_name = tmp.data();
}
ctx->is_first = false;
@@ -160,7 +160,7 @@ ReportStack *SymbolizeCodeAddr2Line(uptr addr) {
Die();
}
InternalScopedBuffer<char> func(1024);
- ssize_t len = internal_read(m->inp_fd, func, func.size() - 1);
+ ssize_t len = internal_read(m->inp_fd, func.data(), func.size() - 1);
if (len <= 0) {
TsanPrintf("ThreadSanitizer: can't read from symbolizer (%d, %d)\n",
m->inp_fd, errno);
@@ -170,11 +170,11 @@ ReportStack *SymbolizeCodeAddr2Line(uptr addr) {
ReportStack *res = NewReportStackEntry(addr);
res->module = internal_strdup(m->name);
res->offset = offset;
- char *pos = (char*)internal_strchr(func, '\n');
+ char *pos = (char*)internal_strchr(func.data(), '\n');
if (pos && func[0] != '?') {
- res->func = (char*)internal_alloc(MBlockReportStack, pos - func + 1);
- internal_memcpy(res->func, func, pos - func);
- res->func[pos - func] = 0;
+ res->func = (char*)internal_alloc(MBlockReportStack, pos - func.data() + 1);
+ internal_memcpy(res->func, func.data(), pos - func.data());
+ res->func[pos - func.data()] = 0;
char *pos2 = (char*)internal_strchr(pos, ':');
if (pos2) {
res->file = (char*)internal_alloc(MBlockReportStack, pos2 - pos - 1 + 1);