unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
blob 0b59387dc928fbc6d1d08c4ecc1cbcc5c66991c5 1774 bytes (raw)
name: patches/dstat-fix-crash-when-specifying-delay.patch 	 # note: path name is non-authoritative(*)

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
 
From: Tobias Geerinckx-Rice <me@tobias.gr>
Date: Sun, 16 Jun 2019 02:34:10 +0200
Subject: [PATCH] gnu: dstat: Fix crash when specifying a delay.

Taken verbatim from a pull request[0] that will never be merged.

[0]: https://github.com/dagwieers/dstat/pull/167

From 220a785321b13b6df92a536080aca6ef1cb644ad Mon Sep 17 00:00:00 2001
From: Falko Goettsch <falko@uw.edu>
Date: Mon, 11 Mar 2019 20:12:49 -0700
Subject: [PATCH] Fixed bug when specifying a delay

The division in the 'loop' calculation in perform() was returning floating point values
after the migration to Python 3, rather than rounding down. Changed to floor division.

I think the floating point values kept 'loop == 0' from ever being
true and the variables inside that conditional were never initialized,
causing the following error when a delay other than 1 was specified:

You did not select any stats, using -cdngy by default.
Traceback (most recent call last):
  File "/home/falko/repos/dstat/dstat", line 2825, in <module>
    main()
  File "/home/falko/repos/dstat/dstat", line 2684, in main
    scheduler.run()
  File "/home/falko/.conda/envs/python3/lib/python3.7/sched.py", line 151, in run
    action(*argument, **kwargs)
  File "/home/falko/repos/dstat/dstat", line 2729, in perform
    oldcols = cols
NameError: name 'cols' is not defined
---
 dstat | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/dstat b/dstat
index 9359965..3b4980f 100755
--- a/dstat
+++ b/dstat
@@ -2697,7 +2697,7 @@ def perform(update):
 
         starttime = time.time()
 
-        loop = (update - 1 + op.delay) / op.delay
+        loop = (update - 1 + op.delay) // op.delay
         step = ((update - 1) % op.delay) + 1
 
         ### Get current time (may be different from schedule) for debugging

debug log:

solving 0b59387dc928fbc6d1d08c4ecc1cbcc5c66991c5 ...
found 0b59387dc928fbc6d1d08c4ecc1cbcc5c66991c5 in https://git.savannah.gnu.org/cgit/guix.git

(*) Git path names are given by the tree(s) the blob belongs to.
    Blobs themselves have no identifier aside from the hash of its contents.^

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).