Error with TDatime::Convert()

I’m trying to create a histogram using measurements over the course of a single day and along the way I think I found an error in TDatime.

TDatime time(2005,7,24,0,0,0);

time.Convert();

time.Convert(kTRUE);

The first call to Convert returns 1122188400, which is 07:00:00 07/24/2005 in UNIX time. This is the correct date plus seven hours, which is the current offset from my computer to GMT (I’m on PDT). However, the second call, with the kTRUE flag set, returns 1122213600, which is 14:00:00 07/24/2005 in UNIX time.

It seems like Convert corrected for the time zone difference in the wrong direction. Is this a bug or am I misunderstanding how Convert works? If this is an error on my part, is there anyway to get ROOT to go from the TDatime I created to 1122163200, which is the correct UNIX time for 00:00:00 07/24/2005?