| ... | ... | @@ -191,18 +191,16 @@ fn parseCommitUserAndAt(input: string) !UserAndAt { |
| 191 | 191 | } |
| 192 | 192 | |
| 193 | 193 | fn parseAt(time_part: string, tz_part: string) time.DateTime { |
| 194 | | const at = time.DateTime.initUnix(extras.parseDigits(u64, time_part, 10) catch unreachable); |
| 194 | var at = time.DateTime.initUnix(extras.parseDigits(u64, time_part, 10) catch unreachable); |
| 195 | 195 | std.debug.assert(tz_part.len == 5); |
| 196 | 196 | std.debug.assert(tz_part[0] == '-' or tz_part[0] == '+'); |
| 197 | | // const sign: i8 = if (tz_part[0] == '+') 1 else -1; |
| 198 | | // const hrs = extras.parseDigits(u8, tz_part[1..][0..2], 10) catch unreachable; |
| 199 | | // const mins = extras.parseDigits(u8, tz_part[3..][0..2], 10) catch unreachable; |
| 200 | | // if (sign > 0) at = at.addHours(hrs); |
| 201 | | // if (sign > 0) at = at.addMins(mins); |
| 202 | | // at.offset += (hrs * 60) + mins; |
| 203 | | // if (sign < 0) at = at.subHours(hrs); // TODO: |
| 204 | | // if (sign < 0) at = at.subMins(mins); // TODO: |
| 205 | | // at.offset -= (hrs * 60) + mins; |
| 197 | const sign: i8 = if (tz_part[0] == '+') 1 else -1; |
| 198 | const hrs = extras.parseDigits(u7, tz_part[1..][0..2], 10) catch unreachable; |
| 199 | const mins = extras.parseDigits(u7, tz_part[3..][0..2], 10) catch unreachable; |
| 200 | at.z_offset += hrs; |
| 201 | at.z_offset *= 4; |
| 202 | at.z_offset += mins / 15; |
| 203 | at.z_offset *= sign; |
| 206 | 204 | return at; |
| 207 | 205 | } |
| 208 | 206 | |