| 246 return 0; |
246 return 0; |
| 247 if (!g_time_val_from_iso8601(str, &g_timeval)) |
247 if (!g_time_val_from_iso8601(str, &g_timeval)) |
| 248 return 0; |
248 return 0; |
| 249 return g_timeval.tv_sec; |
249 return g_timeval.tv_sec; |
| 250 } |
250 } |
| |
251 |
| |
252 uint64_t * ggp_uint64dup(uint64_t val) |
| |
253 { |
| |
254 uint64_t *ptr = g_new(uint64_t, 1); |
| |
255 *ptr = val; |
| |
256 return ptr; |
| |
257 } |
| |
258 |
| |
259 gint ggp_int64_compare(gconstpointer _a, gconstpointer _b) |
| |
260 { |
| |
261 const int64_t *ap = _a, *bp = _b; |
| |
262 const int64_t a = *ap, b = *bp; |
| |
263 if (a == b) |
| |
264 return 0; |
| |
265 if (a < b) |
| |
266 return -1; |
| |
267 else |
| |
268 return 1; |
| |
269 } |