GNU bug report logs - #19063
[FIX] Calc computing max of a vector of dates

Previous Next

Package: emacs;

Reported by: Thierry Banel <tbanelwebmin <at> free.fr>

Date: Sat, 15 Nov 2014 18:07:02 UTC

Severity: normal

Done: Jay Belanger <jay.p.belanger <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Jay Belanger <jay.p.belanger <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#19063: closed ([FIX] Calc computing max of a vector of dates)
Date: Sun, 16 Nov 2014 05:37:01 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sat, 15 Nov 2014 23:36:10 -0600
with message-id <CACALrE-cqfKhGhzrhmw_1r9A=AuyPaC2BiPn4T_En+cSH6e2zA <at> mail.gmail.com>
and subject line Fwd: Re: bug#19063: [FIX] Calc computing max of a vector of dates
has caused the debbugs.gnu.org bug report #19063,
regarding [FIX] Calc computing max of a vector of dates
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
19063: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=19063
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Thierry Banel <tbanelwebmin <at> free.fr>
To: bug-gnu-emacs <at> gnu.org
Subject: [FIX] Calc computing max of a vector of dates
Date: Sat, 15 Nov 2014 18:58:55 +0100
Hi the list.

* Description
In Calc there is a bug when computing the max or min of a vector of dates.
The fix is quite simple (change a car to a caar)

* Unit testing
 M-x calc     launch Calc
 t N          insert "now" date-time
 7+           add 7 days (or whatever)
 t N          insert "now" again
 Esc 2 v p    pack both date-times in a vector
 u X          call calc-vector-max

==> result with the bug:
    vmax([<7:36:14pm Thu Nov 20, 2014>,
          <7:36:54pm Thu Nov 13, 2014>])

==> result with the fix:
    <7:36:14pm Thu Nov 20, 2014>

This test also works with "min" instead of "max"
and
  u N
instead of
  u X

* ChangeLog

    2014-11-13 Thierry Banel <tbanelwebmin <at> free.fr>

    * calc-arith.el (math-max-list, math-min-list): fix bug
    for date handling.

* Patch
*** calc-arith.el-old    2014-11-13 19:58:13.159676097 +0100
--- calc-arith.el-new    2014-11-13 20:00:01.886392943 +0100
***************
*** 2249,2255 ****
 
  (defun math-min-list (a b)
    (if b
!       (if (or (Math-anglep (car b)) (eq (car b) 'date)
            (and (eq (car (car b)) 'intv) (math-intv-constp (car b)))
            (math-infinitep (car b)))
        (math-min-list (math-min a (car b)) (cdr b))
--- 2249,2255 ----
 
  (defun math-min-list (a b)
    (if b
!       (if (or (Math-anglep (car b)) (eq (caar b) 'date)
            (and (eq (car (car b)) 'intv) (math-intv-constp (car b)))
            (math-infinitep (car b)))
        (math-min-list (math-min a (car b)) (cdr b))
***************
*** 2279,2285 ****
 
  (defun math-max-list (a b)
    (if b
!       (if (or (Math-anglep (car b)) (eq (car b) 'date)
            (and (eq (car (car b)) 'intv) (math-intv-constp (car b)))
            (math-infinitep (car b)))
        (math-max-list (math-max a (car b)) (cdr b))
--- 2279,2285 ----
 
  (defun math-max-list (a b)
    (if b
!       (if (or (Math-anglep (car b)) (eq (caar b) 'date)
            (and (eq (car (car b)) 'intv) (math-intv-constp (car b)))
            (math-infinitep (car b)))
        (math-max-list (math-max a (car b)) (cdr b))



[Message part 3 (message/rfc822, inline)]
From: Jay Belanger <jay.p.belanger <at> gmail.com>
To: 19063-done <at> debbugs.gnu.org
Subject: Fwd: Re: bug#19063: [FIX] Calc computing max of a vector of dates
Date: Sat, 15 Nov 2014 23:36:10 -0600
[Message part 4 (text/plain, inline)]
---------- Forwarded message ----------
From: "Jay Belanger" <jay.p.belanger <at> gmail.com>
Date: Nov 15, 2014 11:28 PM
Subject: Re: bug#19063: [FIX] Calc computing max of a vector of dates
To: <done-19063 <at> debbugs.gnu.org>
Cc: <jay.p.belanger <at> gmail.com>


Thanks; I've committed your fix.

Jay
[Message part 5 (text/html, inline)]

This bug report was last modified 10 years and 187 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.