From 636f0d1385539b58193de67dd3bc8ce69a65ad95 Mon Sep 17 00:00:00 2001 From: garga Date: Mon, 30 Jan 2006 16:31:34 +0000 Subject: - Add a patch to read tai64n date format with no need of tai64nlocal external application [1] - Remove USEREINPLACE - Unquote BROKEN PR: ports/92425 [1] Submitted by: Luca Morettoni [1] --- mail/qmailanalog/files/patch-matchup.c | 63 ++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 mail/qmailanalog/files/patch-matchup.c (limited to 'mail/qmailanalog/files') diff --git a/mail/qmailanalog/files/patch-matchup.c b/mail/qmailanalog/files/patch-matchup.c new file mode 100644 index 000000000000..3525169b62da --- /dev/null +++ b/mail/qmailanalog/files/patch-matchup.c @@ -0,0 +1,63 @@ +*** matchup.c-orig Fri Jul 1 12:28:28 2005 +--- matchup.c Fri Jul 1 14:06:04 2005 +*************** +*** 417,422 **** +--- 417,463 ---- + + stralloc outline = {0}; + ++ void fix_taia() ++ { ++ stralloc tai = {0}; ++ stralloc tmp = {0}; ++ char *p = line.s+field[0]+1; ++ unsigned long secs; ++ unsigned long nanosecs; ++ unsigned long u; ++ char ch; ++ ++ secs = 0; ++ nanosecs = 0; ++ for (;;) { ++ ch = *p++; ++ u = ch - '0'; ++ if (u >= 10) { ++ u = ch - 'a'; ++ if (u >= 6) break; ++ u += 10; ++ } ++ secs <<= 4; ++ secs += nanosecs >> 28; ++ nanosecs &= 0xfffffff; ++ nanosecs <<= 4; ++ nanosecs += u; ++ } ++ secs -= 4611686018427387914ULL; ++ ++ if (!stralloc_copyb(&tai, strnum,fmt_ulong(strnum,secs))) nomem(); ++ if (!stralloc_cats(&tai,".")) nomem(); ++ if (!stralloc_catb(&tai, strnum,fmt_ulong(strnum,nanosecs))) nomem(); ++ if (!stralloc_0(&tai)) nomem(); ++ ++ if (!stralloc_copy(&tmp,&tai)) nomem(); ++ while (tmp.len < field[1]) ++ if (!stralloc_cats(&tmp," ")) nomem(); ++ if (!stralloc_cats(&tmp,line.s + field[1])) nomem(); ++ if (!stralloc_copy(&line,&tmp)) nomem(); ++ if (!stralloc_0(&line)) nomem(); ++ } ++ + void main() + { + int i; +*************** +*** 452,457 **** +--- 493,500 ---- + while (j < line.len) if (!line.s[j]) break; else ++j; + } + if (!stralloc_0(&line)) nomem(); ++ ++ if ((line.s[field[0]]) == '@') fix_taia(); + + if (str_equal(line.s + field[1],"status:")) ; + else if (str_equal(line.s + field[1],"starting")) starting(); -- cgit