[dovecot/core] cc419b: lib-imap: imap-bodystructure: Fixed handling of a ...

GitHub noreply at github.com
Wed Apr 12 12:00:11 EEST 2017


  Branch: refs/heads/master
  Home:   https://github.com/dovecot/core
  Commit: cc419b54f4580884a5ff19cdf2b0626201a5ae84
      https://github.com/dovecot/core/commit/cc419b54f4580884a5ff19cdf2b0626201a5ae84
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2017-04-12 (Wed, 12 Apr 2017)

  Changed paths:
    M src/lib-imap/imap-bodystructure.c

  Log Message:
  -----------
  lib-imap: imap-bodystructure: Fixed handling of a multipart part without children in imap_bodystructure_write().

In that case it writes an empty text/plain part to prevent generating an invalid BODYSTRUCURE.
However, it always generated the basic BODY version without the extra fields for a full BODYSTRUCTURE.


  Commit: da269a5644e169bd8072c160ad9dac706f0206f2
      https://github.com/dovecot/core/commit/da269a5644e169bd8072c160ad9dac706f0206f2
  Author: Stephan Bosch <stephan.bosch at dovecot.fi>
  Date:   2017-04-12 (Wed, 12 Apr 2017)

  Changed paths:
    M src/lib-imap/imap-bodystructure.c
    M src/lib-imap/test-imap-bodystructure.c

  Log Message:
  -----------
  lib-imap: imap-bodystructure: Fixed handling of a multipart part without children in imap_bodystructure_parse().

In imap_bodystructure_write(), an empty multipart part is addressed by generating an empty text/plain part.
However, when parsing that back with imap_bodystructure_parse() against a parsed message_part tree, this case needs to be considered explicitly.
Otherwise, it will not be able to match the message part hierarchies.

This adds a test suite item that tests both the write (previous commit) and parse functions.


Compare: https://github.com/dovecot/core/compare/c6ae57a037d8...da269a5644e1


More information about the dovecot-cvs mailing list