1
Fork 0
mirror of https://github.com/RGBCube/superfreq synced 2025-07-27 17:07:44 +00:00

system: fix thermal zone scanning

This commit is contained in:
RGBCube 2025-06-12 17:04:28 +03:00
parent 86b2f5581f
commit fb5ef3d3d2
Signed by: RGBCube
SSH key fingerprint: SHA256:CzqbPcfwt+GxFYNnFVCqoN5Itn4YFrshg1TrnACpA5M

View file

@ -160,6 +160,8 @@ impl System {
return Ok(()); return Ok(());
}; };
let mut counter = 0;
for entry in thermal_zones { for entry in thermal_zones {
let entry = entry.with_context(|| format!("failed to read entry of '{PATH}'"))?; let entry = entry.with_context(|| format!("failed to read entry of '{PATH}'"))?;
@ -169,7 +171,7 @@ impl System {
let entry_name = entry_name.to_string_lossy(); let entry_name = entry_name.to_string_lossy();
if !entry_name.starts_with("thermal_zone") { if !entry_name.starts_with("thermal_zone") {
return Ok(()); continue;
} }
let Some(entry_type) = fs::read(entry_path.join("type")).with_context(|| { let Some(entry_type) = fs::read(entry_path.join("type")).with_context(|| {
@ -179,14 +181,14 @@ impl System {
) )
})? })?
else { else {
return Ok(()); continue;
}; };
if !entry_type.contains("cpu") if !entry_type.contains("cpu")
&& !entry_type.contains("x86") && !entry_type.contains("x86")
&& !entry_type.contains("core") && !entry_type.contains("core")
{ {
return Ok(()); continue;
} }
let Some(temperature_mc) = fs::read_n::<i64>(entry_path.join("temp")) let Some(temperature_mc) = fs::read_n::<i64>(entry_path.join("temp"))
@ -197,11 +199,12 @@ impl System {
) )
})? })?
else { else {
return Ok(()); continue;
}; };
// Magic value to see that it is from the thermal zones. // Magic value to see that it is from the thermal zones.
temperatures.insert(777, temperature_mc as f64 / 1000.0); temperatures.insert(777 + counter, temperature_mc as f64 / 1000.0);
counter += 1;
} }
} }