mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-23 11:28:13 +01:00
python-cffi: returned OwnedMessage objects from Message.replies
If we return regular Message objects, python will try to destroy them, and the underlying notmuch object, causing e.g. the crash [1]. [1]: id:87sfu6utxg.fsf@tethera.net
This commit is contained in:
parent
d9a2b900b6
commit
9e7ea628e6
2 changed files with 2 additions and 4 deletions
|
@ -357,14 +357,14 @@ class Message(base.NotmuchObject):
|
|||
This method will only work if the message was created from a
|
||||
thread. Otherwise it will yield no results.
|
||||
|
||||
:returns: An iterator yielding :class:`Message` instances.
|
||||
:returns: An iterator yielding :class:`OwnedMessage` instances.
|
||||
:rtype: MessageIter
|
||||
"""
|
||||
# The notmuch_messages_valid call accepts NULL and this will
|
||||
# become an empty iterator, raising StopIteration immediately.
|
||||
# Hence no return value checking here.
|
||||
msgs_p = capi.lib.notmuch_message_get_replies(self._msg_p)
|
||||
return MessageIter(self, msgs_p, db=self._db)
|
||||
return MessageIter(self, msgs_p, db=self._db, msg_cls=OwnedMessage)
|
||||
|
||||
def __hash__(self):
|
||||
return hash(self.messageid)
|
||||
|
|
|
@ -24,13 +24,11 @@ show_msgs(thread, 0)
|
|||
EOF
|
||||
|
||||
test_begin_subtest "recursive traversal of replies (no crash)"
|
||||
test_subtest_known_broken
|
||||
test_python < recurse.py
|
||||
error=$?
|
||||
test_expect_equal "${error}" 0
|
||||
|
||||
test_begin_subtest "recursive traversal of replies (output)"
|
||||
test_subtest_known_broken
|
||||
test_python < recurse.py
|
||||
tail -n 10 < OUTPUT > OUTPUT.sample
|
||||
cat <<EOF > EXPECTED
|
||||
|
|
Loading…
Reference in a new issue