Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 6002 - pine-4.10-maildir.patch behavior issues
Summary: pine-4.10-maildir.patch behavior issues
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: pine
Version: 6.1
Hardware: i386
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Mike A. Harris
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-10-15 23:12 UTC by Jamie Guinan
Modified: 2008-05-01 15:37 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2000-02-17 13:35:01 UTC


Attachments (Terms of Use)

Description Jamie Guinan 1999-10-15 23:12:00 UTC
In the module /pine4.10/imap/src/osdep/unix/maildir.c,
This patch contains a module named maildir.c which
contains this function,

void maildir_list (MAILSTREAM *stream,char *ref, char *pat);

When "L  FOLDER LIST" is selected from the main Pine
menu, maildir_list is called with these parameters,

  maildir_list(0x0, "mail/", "%")

If you follow the code, it ends up doing a readdir()
of the directory *above* "mail/", and then does a
one-level deep recursive stat() of every file it finds.

(Try running "strace pine 2> pine.log" to see all
  the files that get stat-ed.)

On my system and probably many others, this takes a
substantial amount of time.

I'm not sure what this code is supposed to be doing.
As it stands, "ref" is never even used.  This may be
because it is called as an "abstract method" from
mail.c: mail_list(),
  (*d->list) (stream,ref,pat);

In any case, this is some weird behavior.  Its a real
problem for me because it trips the automounter when
it hits symlinks to files on remote systems that are
not always running, bringing Pine to a halt until
the stat() call times out (a minute or longer).

-Jamie

Comment 1 Jamie Guinan 1999-10-18 01:33:59 UTC
I had a few minutes to put a patch together to fix this problem.
It fixes the errant directory searches, but I did not test it with
Pine's IMAP or NNTP features (I do not use those features).
The patch and instructions can be found at,

  http://www.bluebutton.com/bluebuttonpatches/pine_maildir.c.patch
  http://www.bluebutton.com/bluebuttonpatches/pine_maildir.c.readme

-Jamie

Comment 2 Bernhard Rosenkraenzer 2000-02-17 13:35:59 UTC
Thanks, fixed.


Note You need to log in before you can comment on or make changes to this bug.