aboutsummaryrefslogtreecommitdiffstats
path: root/debian/patches/0102-fix-division-by-zero-in-io-rates.patch
diff options
context:
space:
mode:
authorDaniel Lange <DLange@git.local>2022-02-04 11:19:44 +0100
committerDaniel Lange <DLange@git.local>2022-02-04 11:35:49 +0100
commita3f1e070e118c47adde86745832aea6b6824327a (patch)
tree73bfab06cf8cc11ec69d6af044100f78953d4680 /debian/patches/0102-fix-division-by-zero-in-io-rates.patch
parent423169e635c222e549e3c8d989d3f1f3576c117d (diff)
downloaddebian_htop-a3f1e070e118c47adde86745832aea6b6824327a.tar.gz
debian_htop-a3f1e070e118c47adde86745832aea6b6824327a.tar.bz2
debian_htop-a3f1e070e118c47adde86745832aea6b6824327a.zip
Add patch to prevent division by zero in IO rate calculationbullseye-maintenance
Backport of 265a7b8a501174e2f5c8268a76b5e88d6688ad70 from Benny Baumann
Diffstat (limited to 'debian/patches/0102-fix-division-by-zero-in-io-rates.patch')
-rw-r--r--debian/patches/0102-fix-division-by-zero-in-io-rates.patch31
1 files changed, 31 insertions, 0 deletions
diff --git a/debian/patches/0102-fix-division-by-zero-in-io-rates.patch b/debian/patches/0102-fix-division-by-zero-in-io-rates.patch
new file mode 100644
index 0000000..0fc10bc
--- /dev/null
+++ b/debian/patches/0102-fix-division-by-zero-in-io-rates.patch
@@ -0,0 +1,31 @@
+Backport of 265a7b8a501174e2f5c8268a76b5e88d6688ad70
+---
+
+--- a/linux/LinuxProcessList.c
++++ b/linux/LinuxProcessList.c
+@@ -398,6 +398,7 @@
+
+ unsigned long long last_read = process->io_read_bytes;
+ unsigned long long last_write = process->io_write_bytes;
++
+ char* buf = buffer;
+ char* line = NULL;
+ while ((line = strsep(&buf, "\n")) != NULL) {
+@@ -408,7 +409,7 @@
+ } else if (String_startsWith(line + 1, "ead_bytes: ")) {
+ process->io_read_bytes = strtoull(line + 12, NULL, 10);
+ process->io_rate_read_bps =
+- ((double)(process->io_read_bytes - last_read)) / (((double)(now - process->io_rate_read_time)) / 1000);
++ now > process->io_rate_read_time ? ((double)(process->io_read_bytes - last_read)) / (((double)(now - process->io_rate_read_time)) / 1000) : NAN;
+ process->io_rate_read_time = now;
+ }
+ break;
+@@ -418,7 +419,7 @@
+ } else if (String_startsWith(line + 1, "rite_bytes: ")) {
+ process->io_write_bytes = strtoull(line + 13, NULL, 10);
+ process->io_rate_write_bps =
+- ((double)(process->io_write_bytes - last_write)) / (((double)(now - process->io_rate_write_time)) / 1000);
++ now > process->io_rate_write_time ? ((double)(process->io_write_bytes - last_write)) / (((double)(now - process->io_rate_write_time)) / 1000) : NAN;
+ process->io_rate_write_time = now;
+ }
+ break;

© 2014-2024 Faster IT GmbH | imprint | privacy policy