mirror of
https://github.com/wolfpld/tracy.git
synced 2024-11-22 22:44:34 +00:00
Build sanitization & Static analysis warning fixes
- Wrapping FORCEINLINE & WIN32_LEAN_AND_MEAN definess with ifndef bc other libraries may define it and trigger redefinition warning - Possibly contentious given tone in the manual (:P) but removing variable shadowing in TracySysTrace.cpp - Alternate Solution: Add #define TRACY_FORCE_SILENT_WARNINGS toggle-able flag. If flag is enabled, push/pop warning disables that have to be included in client code
This commit is contained in:
parent
979f41efd1
commit
707117c04f
@ -350,10 +350,10 @@ void SysTraceSendExternalName( uint64_t thread )
|
||||
{
|
||||
if( (uint64_t)ptr >= (uint64_t)info.lpBaseOfDll && (uint64_t)ptr <= (uint64_t)info.lpBaseOfDll + (uint64_t)info.SizeOfImage )
|
||||
{
|
||||
char buf[1024];
|
||||
if( _GetModuleBaseNameA( phnd, modules[i], buf, 1024 ) != 0 )
|
||||
char buf2[1024];
|
||||
if( _GetModuleBaseNameA( phnd, modules[i], buf2, 1024 ) != 0 )
|
||||
{
|
||||
GetProfiler().SendString( thread, buf, QueueType::ExternalThreadName );
|
||||
GetProfiler().SendString( thread, buf2, QueueType::ExternalThreadName );
|
||||
threadSent = true;
|
||||
}
|
||||
}
|
||||
@ -389,13 +389,13 @@ void SysTraceSendExternalName( uint64_t thread )
|
||||
const auto phnd = OpenProcess( PROCESS_QUERY_LIMITED_INFORMATION, FALSE, pid );
|
||||
if( phnd != INVALID_HANDLE_VALUE )
|
||||
{
|
||||
char buf[1024];
|
||||
const auto sz = GetProcessImageFileNameA( phnd, buf, 1024 );
|
||||
char buf2[1024];
|
||||
const auto sz = GetProcessImageFileNameA( phnd, buf2, 1024 );
|
||||
CloseHandle( phnd );
|
||||
if( sz != 0 )
|
||||
{
|
||||
auto ptr = buf + sz - 1;
|
||||
while( ptr > buf && *ptr != '\\' ) ptr--;
|
||||
auto ptr = buf2 + sz - 1;
|
||||
while( ptr > buf2 && *ptr != '\\' ) ptr--;
|
||||
if( *ptr == '\\' ) ptr++;
|
||||
GetProfiler().SendString( thread, ptr, QueueType::ExternalName );
|
||||
return;
|
||||
|
@ -110,13 +110,17 @@
|
||||
#define _Static_assert static_assert
|
||||
|
||||
/// Platform and arch specifics
|
||||
#if defined(_MSC_VER) && !defined(__clang__)
|
||||
# define FORCEINLINE inline __forceinline
|
||||
#else
|
||||
# define FORCEINLINE inline __attribute__((__always_inline__))
|
||||
#ifndef FORCEINLINE
|
||||
# if defined(_MSC_VER) && !defined(__clang__)
|
||||
# define FORCEINLINE inline __forceinline
|
||||
# else
|
||||
# define FORCEINLINE inline __attribute__((__always_inline__))
|
||||
# endif
|
||||
#endif
|
||||
#if PLATFORM_WINDOWS
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# ifndef WIN32_LEAN_AND_MEAN
|
||||
# define WIN32_LEAN_AND_MEAN
|
||||
# endif
|
||||
# include <windows.h>
|
||||
# if ENABLE_VALIDATE_ARGS
|
||||
# include <Intsafe.h>
|
||||
|
Loading…
Reference in New Issue
Block a user