develooper Front page | perl.datetime | Postings from January 2003

Patch

Thread Next
From:
David Wheeler
Date:
January 12, 2003 11:02
Subject:
Patch
Message ID:
570ABADA-2660-11D7-A08F-000393D9436A@wheeler.net
The epoch() method won't currently work if it's passed an epoch of "0". 
This patch should correct.

+++ DateTime.pm	Sun Jan 12 10:58:58 2003
@@ -201,8 +201,8 @@

      my $epoch;

-    if ( $epoch = shift ) {    # Passed in a new value
-
+    if (@_) {    # Passed in a new value
+        $epoch = shift || 0;
          my $newepoch = $class->new( epoch => $epoch );
          $self->{julian} = $newepoch->{julian};
          $self->{julsec} = $newepoch->{julsec};

As a side-effect, it'll also consider an explicitly-passed undef as 
epoch 0. If that's not desirable, use this patch, instead:

--- DateTime.pm.~1.1.1.1.~	Sat Jan 11 13:38:23 2003
+++ DateTime.pm	Sun Jan 12 11:01:37 2003
@@ -196,13 +196,10 @@
  }

  sub epoch {
-    my $self  = shift;
+    my ($self, $epoch) = @_;
      my $class = ref($self);

-    my $epoch;
-
-    if ( $epoch = shift ) {    # Passed in a new value
-
+    if (defined $epoch and $epoch ne '') {    # Passed in a new value
          my $newepoch = $class->new( epoch => $epoch );
          $self->{julian} = $newepoch->{julian};
          $self->{julsec} = $newepoch->{julsec};

Regards,

David

-- 
David Wheeler                                     AIM: dwTheory
david@wheeler.net                                 ICQ: 15726394
http://david.wheeler.net/                      Yahoo!: dew7e
                                                Jabber: Theory@jabber.org


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About