Spoolfile variable is being incorrectly g_free'd



I just did a CVS update yesterday and found balsa broken.
Here is one of the bugs, and a fix for it:

In src/balsa-app.c, function do_load_mailboxes() we have:

     gchar *spool;
     spool = g_strdup (...)
     mailbox_init (spool ...)

Inside mailbox_init(inbox_path, ...), we have:

     Spoolfile = inbox_path;

Then we return to balsa-app.c, where we have:

      g_free (spool)

which leaves Spoolfile pointing to a freed area.  This breaks
balsa later when you try and check your mail.  The spoolfile
path is destroyed.  I believe someone else reported this problem.

Removing the g_free(spool) in src/balsa-app.c fixes the problem.
Changing the line in mailbox_init() to do a g_strdup() would also work.

However, after doing this, I get a new problem:

** WARNING **: Timeout exceeded while attempting flock lock!
POP3 E: Cannot open the temporary mailbox to spool POP3 messages:
"/home/jms/mail/inbox"

** WARNING **: Cannot open the temporary mailbox to spool POP3 messages:
"/home/jms/mail/inbox"

Any ideas?

Thanks,
- John Schulien
  jms@uic.edu





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