LP1864056: Don't compare multiple new Date()s user/gmcharlt/lp1864056_signoff
authorJason Boyer <JBoyer@eoli.info>
Fri, 21 Feb 2020 21:08:36 +0000 (16:08 -0500)
committerGalen Charlton <gmc@equinoxinitiative.org>
Mon, 22 Jun 2020 16:39:20 +0000 (12:39 -0400)
commita98cb5f3cadf92831ad5d347519929cd5ed9872a
treeb0adcc154821f772dd87ea38f801803cfc2b5e05
parentbe3de646ad7c8b7ef34c0bcad169d2912ccb4c50
LP1864056: Don't compare multiple new Date()s

This branch addresses a race condition when
checking out or renewing items.
(The use of minDate in items_out was implicitly
immune to this issue, but that is made explicit
with this patch.)

To test
-------
[1] The race condition would be difficult to reliably
    reproduce directly, although a tool like
    https://github.com/mattzeunert/javascript-clock-speedup
    might help simulate the problem, so to test, verify
    that the following actions do not break:

    * checking out a loan, both with and without
      setting a specific due date
    * renewing a loan with a specific due date
      from the patron items out tab
    * renewing a loan from Circulation -> Renew Items,
      both with and without setting a specific due date.

Signed-off-by: Jason Boyer <JBoyer@eoli.info>
Signed-off-by: Galen Charlton <gmc@equinoxinitiative.org>
Open-ILS/web/js/ui/default/staff/circ/patron/checkout.js
Open-ILS/web/js/ui/default/staff/circ/patron/items_out.js
Open-ILS/web/js/ui/default/staff/circ/renew/app.js