return process_name_cache_str;
}
+static uptr ReadProcessName(/*out*/ char *buf, uptr buf_len) {
+ ReadLongProcessName(buf, buf_len);
+ char *s = const_cast<char *>(StripModuleName(buf));
+ uptr len = internal_strlen(s);
+ if (s != buf) {
+ internal_memmove(buf, s, len);
+ buf[len] = '\0';
+ }
+ return len;
+}
+
void UpdateProcessName() {
ReadProcessName(process_name_cache_str, sizeof(process_name_cache_str));
}
// OS
uptr ReadBinaryName(/*out*/char *buf, uptr buf_len);
uptr ReadBinaryNameCached(/*out*/char *buf, uptr buf_len);
-uptr ReadProcessName(/*out*/char *buf, uptr buf_len);
+uptr ReadLongProcessName(/*out*/ char *buf, uptr buf_len);
const char *GetProcessName();
void UpdateProcessName();
void CacheBinaryName();
return module_name_len;
}
-static uptr ReadLongProcessName(/*out*/ char *buf, uptr buf_len) {
+uptr ReadLongProcessName(/*out*/ char *buf, uptr buf_len) {
#if SANITIZER_LINUX
char *tmpbuf;
uptr tmpsize;
return ReadBinaryName(buf, buf_len);
}
-uptr ReadProcessName(/*out*/ char *buf, uptr buf_len) {
- ReadLongProcessName(buf, buf_len);
- char *s = const_cast<char *>(StripModuleName(buf));
- uptr len = internal_strlen(s);
- if (s != buf) {
- internal_memmove(buf, s, len);
- buf[len] = '\0';
- }
- return len;
-}
-
// Match full names of the form /path/to/base_name{-,.}*
bool LibraryNameIs(const char *full_name, const char *base_name) {
const char *name = full_name;
return 0;
}
+uptr ReadLongProcessName(/*out*/char *buf, uptr buf_len) {
+ return ReadBinaryName(buf, buf_len);
+}
+
void ReExec() {
UNIMPLEMENTED();
}
return 0;
}
+uptr ReadLongProcessName(/*out*/char *buf, uptr buf_len) {
+ return ReadBinaryName(buf, buf_len);
+}
+
} // namespace __sanitizer
#endif // _WIN32