BUG: maildir flags sync with database relative path results in corrupted filename

Morgan Veyret morgan.veyret at gmail.com
Sun Jun 7 08:12:00 PDT 2015


Calling Message.tags_to_maildir_flags() when the database has been opened
with a relative path results in a corrupted filename entry in the database.
The actual filename is changed properly but the filename in the database
gets
the relative path prepended.

As I understand it's expected that the database path should be absolute but
corrupting the database when the path is relative sounds dangerous.

Attached is a python script showing the problem.
Run it as follows:

   python ./retag_bug.py db_path +tag,-tag search_query

Also attached is the output showing the problem.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20150607/5695ddde/attachment.html>
-------------- next part --------------
$ notmuch search thread:00000000000005a2
thread:00000000000005a2     March 07 [1/1] Mathieu de Verdiere; [fablab brest] Echange PC DUINO contre ARDUINO MEGA+ramp? (inbox unread)
$ python2 ./test.py ./maildir/ -unread thread:00000000000005a2 
Using db at ./maildir/
Changing tags: -unread
Search query: thread:00000000000005a2
Adding tags: []
Removing tags: ['unread']
Filename: ./maildir/cur/1425822991_0.10764.minux,U=2618,FMD5=7b0d668e0b18d8601b8bce4eec0ed930:2,
Retagging thread:00000000000005a2
Adding []
Removing ['unread']
Sync maildir: True
Found 1 messages to retag
Retag done
Filename: ./maildir/./maildir/cur/1425822991_0.10764.minux,U=2618,FMD5=7b0d668e0b18d8601b8bce4eec0ed930:2,S

-------------- next part --------------
A non-text attachment was scrubbed...
Name: retag_bug.py
Type: text/x-python
Size: 2150 bytes
Desc: not available
URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20150607/5695ddde/attachment.py>


More information about the notmuch mailing list