emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/dtache caf2fc4914 154/158: Fix incorrect time


From: ELPA Syncer
Subject: [elpa] externals/dtache caf2fc4914 154/158: Fix incorrect time
Date: Wed, 19 Jan 2022 18:58:09 -0500 (EST)

branch: externals/dtache
commit caf2fc4914f889f3c97e1919d456aca70f8a65aa
Author: Niklas Eklund <niklas.eklund@posteo.net>
Commit: Niklas Eklund <niklas.eklund@posteo.net>

    Fix incorrect time
    
    The time was not calculated properly.
---
 dtache.el | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/dtache.el b/dtache.el
index 0a7ddad60f..130a3e72b6 100644
--- a/dtache.el
+++ b/dtache.el
@@ -828,7 +828,8 @@ The timer object is configured according to 
`dtache-timer-configuration'."
           (callback
            (lambda ()
              (when (dtache--state-transition-p session)
-               (dtache--update-session-time session t)
+               (setf (dtache--session-time session)
+                     (dtache--update-session-time session t))
                (dtache--session-state-transition-update session)
                (cancel-timer timer)))))
      (setq timer
@@ -845,7 +846,8 @@ The timer object is configured according to 
`dtache-timer-configuration'."
    (lambda (event)
      (pcase-let ((`(,_ ,action ,_) event))
        (when (eq action 'deleted)
-         (dtache--update-session-time session)
+         (setf (dtache--session-time session)
+               (dtache--update-session-time session))
          (dtache--session-state-transition-update session))))))
 
 (defun dtache--session-deduplicate (sessions)
@@ -891,7 +893,8 @@ Sessions running on  current host or localhost are updated."
   (if (or (dtache--state-transition-p session)
           (dtache--session-missing-p session))
       (progn
-        (dtache--update-session-time session t)
+        (setf (dtache--session-time session)
+              (dtache--update-session-time session t))
         (dtache--session-state-transition-update session))
     (setf (dtache--session-log-size session)
           (file-attribute-size (file-attributes
@@ -1107,7 +1110,7 @@ log to deduce the end time."
                       (dtache--session-file session 'log)))))
       (plist-put time :end (time-to-seconds)))
     (plist-put time :duration (- (plist-get time :end) (plist-get time 
:start)))
-    (setf (dtache--session-time session) time)))
+    time))
 
 (defun dtache--create-id (command)
   "Return a hash identifier for COMMAND."
@@ -1149,11 +1152,11 @@ log to deduce the end time."
 
 (defun dtache--duration-str (session)
   "Return SESSION's duration time."
-  (when (eq 'active (dtache--session-state session))
-    (dtache--update-session-time session))
-  (let* ((time
-          (round
-           (plist-get (dtache--session-time session) :duration)))
+  (let* ((duration (if (eq 'active (dtache--session-state session))
+                       (- (time-to-seconds) (plist-get (dtache--session-time 
session) :start))
+                     (plist-get
+                      (dtache--session-time session) :duration)))
+         (time (round duration))
          (hours (/ time 3600))
          (minutes (/ (mod time 3600) 60))
          (seconds (mod time 60)))



reply via email to

[Prev in Thread] Current Thread [Next in Thread]