diff -r 6641e941ef1e -r ff1a9aa48cfd app/django/utils/timesince.py --- a/app/django/utils/timesince.py Tue Oct 14 12:36:55 2008 +0000 +++ b/app/django/utils/timesince.py Tue Oct 14 16:00:59 2008 +0000 @@ -28,15 +28,12 @@ # Convert datetime.date to datetime.datetime for comparison if d.__class__ is not datetime.datetime: d = datetime.datetime(d.year, d.month, d.day) - if now: - t = now.timetuple() - else: - t = time.localtime() - if d.tzinfo: - tz = LocalTimezone(d) - else: - tz = None - now = datetime.datetime(t[0], t[1], t[2], t[3], t[4], t[5], tzinfo=tz) + + if not now: + if d.tzinfo: + now = datetime.datetime.now(LocalTimezone(d)) + else: + now = datetime.datetime.now() # ignore microsecond part of 'd' since we removed it from 'now' delta = now - (d - datetime.timedelta(0, 0, d.microsecond)) @@ -62,6 +59,9 @@ Like timesince, but returns a string measuring the time until the given time. """ - if now == None: - now = datetime.datetime.now() + if not now: + if getattr(d, 'tzinfo', None): + now = datetime.datetime.now(LocalTimezone(d)) + else: + now = datetime.datetime.now() return timesince(now, d)