nmh-workers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Nmh-workers] m_getfld branch merged


From: David Levine
Subject: [Nmh-workers] m_getfld branch merged
Date: Sun, 27 Jan 2013 11:54:37 -0500

Hi,

The m_getfld() rewrite is finished and the branch merged to
master.  Reviews welcome:

  git diff -w --color=auto dbe9e9eb 0bfb53a2 sbr/m_getfld.c

Or until there's another change to m_getfld.c:

  http://git.savannah.gnu.org/cgit/nmh.git/diff/sbr/m_getfld.c

There is a small performance penalty, I see 10% in my scans
of big folders.  It's due to m_getfld() now having to keep
track of the file stream read position in case the caller
changes it.  If necessary, we could replace the uses of
fseek()/ftell() by callers with more efficient bookkeeping.
But at this point, I think correctness is paramount and
performance is acceptable.

I retained the internal processing structure to make it less
likely that I'd busticate something and make it easier to
review.  With the rewrite, m_getfld() is portable, doesn't
have any sidestepping of its interface, and is stateless.
So if anyone wants to change it internally, it should be
much easier to avoid surprises.

The merge includes the fpurge() cleanup.  So there are no
longer any platform-specific #ifdef's in nmh.

David



reply via email to

[Prev in Thread] Current Thread [Next in Thread]