procmime_decode_content() can open a temporary file when canonicalizing base64 message. tmpfp is used to track this file. When opening the tmpfp second variable 'uncanonicalize' is set TRUE. During the parsing loop uncanonicalie can be reset later to FALSE. However, tmpfp is properly closed only if uncanonicalize is TRUE.
Changes related to this bug have been committed. Please check latest Git and update the bug accordingly. You can also get the patch from: http://git.claws-mail.org/ ++ ChangeLog 2017-07-12 18:50:02.715301921 +0200 http://git.claws-mail.org/?p=claws.git;a=commitdiff;h=ddff08989033e8c3ccdd6e2179166da2a2000c3a Merge: 5fea23f 6fedb78 Author: Colin Leroy <colin@colino.net> Date: Wed Jul 12 18:50:02 2017 +0200 Merge branch 'master' of file:///home/git/claws http://git.claws-mail.org/?p=claws.git;a=commitdiff;h=6fedb78e7f7928e72d6e7c7919ac2be752c789d7 Author: Andrej Kacian <ticho@claws-mail.org> Date: Wed Jul 12 18:48:48 2017 +0200 Fix a file descriptor leak in procmime_decode_content(). Closes bug #3266 - procmime.c: FILE leak in specific circumstances
Looks like this report got overlooked. :) Sorry about that, and thanks!