# [PATCH] fix git log time display for western timezones

1 messages from 2005-04-23 to 2005-04-23. Participants: Nicolas Pitre.
Thread: https://gitlist.dev/t/259

## Nicolas Pitre, 2005-04-23 03:06

Subject: [PATCH] fix git log time display for western timezones
Message-ID: <Pine.LNX.4.62.0504222300010.26129@localhost.localdomain>
URL: https://gitlist.dev/e/Pine.LNX.4.62.0504222300010.26129%40localhost.localdomain

```
It appears that the date command doesn't know how to substract time and 
always adds it.  The time zone fixup has to be done separately otherwise 
time displayed in a negative time zone is wrong.

Signed-off-by: Nicolas Pitre <nico@cam.org>

Index: gitlog.sh
===================================================================
--- 2a91836b5814ffacb1fde000dfb1e55457761c88/gitlog.sh  (mode:100755 sha1:53b55be31b38b2ab88434cf1ac0a868700e64525)
+++ uncommitted/gitlog.sh  (mode:100775)
@@ -56,8 +56,9 @@
 
 				date=(${rest#*> })
 				sec=${date[0]}; tz=${date[1]}
-				dtz=${tz/+/+ }; dtz=${dtz/-/- }
-				pdate="$(date -Rud "1970-01-01 UTC + $sec sec $dtz" 2>/dev/null)"
+				dtz=${tz/+/}
+				lsec=$(expr $dtz / 100 \* 3600 + $dtz % 100 \* 60 + $sec)
+				pdate="$(date -Rud "1970-01-01 UTC + $lsec sec" 2>/dev/null)"
 				if [ "$pdate" ]; then
 					echo -n $color$key $rest | sed "s/>.*/> ${pdate/+0000/$tz}/"
 					echo $coldefault

```
