Bug 33611: Ensure dt_from_string always returns a new object
This patch alters dt_from_string to pass a cloned object if called
on an existing date time object
This resolves an issue where a holds reserve date was being altered when
the default expiration date was set
To test:
1 - Set DefaultHoldExpiration to Set
2 - Set DefaultHoldExpirationPeriod to 365
3 - Set DefaultHoldExpirationunitOfTimeToDays
4 - Place a hold
5 - Note reserve date is 1 year in the future, same as expiration
6 - Apply patch
7 - Restart all
8 - Place another hold
9 - Note reserve date is set to today
Signed-off-by: David Nind <david@davidnind.com>
Signed-off-by: Jonathan Druart <jonathan.druart@bugs.koha-community.org>
Signed-off-by: Hinemoea Viault <hinemoea.viault@inlibro.com>
Signed-off-by: Tomas Cohen Arazi <tomascohen@theke.io>
(cherry picked from commit ca784d740d
)
Signed-off-by: Matt Blenkinsop <matt.blenkinsop@ptfs-europe.com>
This commit is contained in:
parent
59e55c22ef
commit
43cce2fbec
1 changed files with 2 additions and 2 deletions
|
@ -68,8 +68,8 @@ sub dt_from_string {
|
|||
|
||||
$date_format = C4::Context->preference('dateformat') unless $date_format;
|
||||
|
||||
if ( ref($date_string) eq 'DateTime' ) { # already a dt return it
|
||||
return $date_string;
|
||||
if ( ref($date_string) eq 'DateTime' ) { # already a dt return a clone
|
||||
return $date_string->clone();
|
||||
}
|
||||
|
||||
my $regex;
|
||||
|
|
Loading…
Reference in a new issue