From cb9ef7814ecbe51c70912e4ca6672804306e171d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Gr=C3=A9goire?= Date: Mon, 20 Apr 2026 18:05:31 +0200 Subject: [PATCH] Use ReadFile and atoi --- public/client/TracySysTrace.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/public/client/TracySysTrace.cpp b/public/client/TracySysTrace.cpp index c9dd2a38..4ae641aa 100644 --- a/public/client/TracySysTrace.cpp +++ b/public/client/TracySysTrace.cpp @@ -657,16 +657,15 @@ bool SysTraceStart( int64_t& samplingPeriod ) int samplingFrequency = GetSamplingFrequency(); if( samplingFrequency > 0 ) { - FILE* f = fopen( "/proc/sys/kernel/perf_event_max_sample_rate", "r" ); - if( f ) + const auto maxSampleRateStr = ReadFile( "/proc/sys/kernel/perf_event_max_sample_rate" ); + if( maxSampleRateStr ) { - int sysMax; - if( fscanf( f, "%d", &sysMax ) == 1 && samplingFrequency > sysMax ) + const int sysMax = atoi( maxSampleRateStr ); + if( sysMax > 0 && sysMax < samplingFrequency ) { TracyDebug( "Requested sampling frequency %d Hz is higher than system maximum of %d Hz, reducing to system maximum.", samplingFrequency, sysMax ); samplingFrequency = sysMax; } - fclose( f ); } } samplingPeriod = SamplingFrequencyToPeriodNs( samplingFrequency );