On Sun, Aug 06, 2006 at 15:37:46 -0700, Chris Frost wrote:
> I agree with your suggestion that watch_maildirs should not error on such
> directories. And in fact, this is what it is supposed to do.
> (Except that it actually watches the dir to see if it later becomes a 
> maildir.)
> 
> The assert occured because watch_maildirs sees a folder named ".INBOX",
> which would have the imap name "INBOX", and then detects a name collision
> with "~/Maildir/" which also has the imap name "INBOX".
> 
> The attached patch should correct this problem; it changes watch_maildirs
> to ignore any subdirectory named ".INBOX". Can you double check that
> this works correctly?

Hi,

I noticed that the glibc complains about a double free() when I stop
mswatch.

Here are the details given by valgrind:

Sync completed after 19s at 2006-08-07 01:44:26 (all mailboxes)
==31719== Invalid free() / delete / delete[]
==31719==    at 0x401D139: free (vg_replace_malloc.c:233)
==31719==    by 0x804A22C: mswatch_config::~mswatch_config()
(mswatch.cc:60)
==31719==    by 0x41F94EF: exit (in /lib/tls/libc-2.3.6.so)
==31719==    by 0x8049D61: signal_exit(int) (mswatch.cc:77)
==31719==    by 0x41F69E7: (within /lib/tls/libc-2.3.6.so)
==31719==    by 0x804B722: watch() (mswatch.cc:328)
==31719==    by 0x804C200: main (mswatch.cc:480)
==31719==  Address 0x4306BD0 is 0 bytes inside a block of size 7 free'd
==31719==    at 0x401D139: free (vg_replace_malloc.c:233)
==31719==    by 0x804A22C: mswatch_config::~mswatch_config()
(mswatch.cc:60)
==31719==    by 0x41F94EF: exit (in /lib/tls/libc-2.3.6.so)
==31719==    by 0x8049D61: signal_exit(int) (mswatch.cc:77)
==31719==    by 0x41F69E7: (within /lib/tls/libc-2.3.6.so)
==31719==    by 0x804B722: watch() (mswatch.cc:328)
==31719==    by 0x804C200: main (mswatch.cc:480)
==31719== 
==31719== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 19 from
1)
==31719== malloc/free: in use at exit: 20,015 bytes in 9 blocks.
==31719== malloc/free: 92 allocs, 84 frees, 22,726 bytes allocated.
==31719== For counts of detected errors, rerun with: -v
==31719== searching for pointers to 9 not-freed blocks.
==31719== checked 118,628 bytes.
==31719== 
==31719== LEAK SUMMARY:
==31719==    definitely lost: 5 bytes in 1 blocks.
==31719==      possibly lost: 0 bytes in 0 blocks.
==31719==    still reachable: 20,010 bytes in 8 blocks.
==31719==         suppressed: 0 bytes in 0 blocks.
==31719== Use --leak-check=full to see details of leaked memory.

Regards,
Tino

-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys -- and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
isync-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/isync-devel

Reply via email to