Parts with Content-ID or Content-Location had been considered as inline
content and not added into real attachments, even when not referenced
in the HTML body. This addresses it in a way that it's only for images
and the worse case is to add it to both inline images and attachments,
to not lose it.
Reported downstream as:
https://bugzilla.redhat.com/show_bug.cgi?id=1666572
In case libical is compiled to keep properties with empty values,
which means icalproperty_get_xxxx() can return NULL instead of an empty
string, the code of the ECellText (aka the List View) could try
to use the NULL value in strcmp(), strlen() and such, which causes
abort of the application.
This had been reported downstream as:
https://bugzilla.redhat.com/show_bug.cgi?id=1658002
The image had been stored as "data:image/...;base64;<data>", which
the context menu Save Image and Copy Image could not handle. This
resulted in a lengthy error message, which could cause a crash.
This commit fixes several things:
a) replace "data:" URI-s with "mail://" URI-s, which means less resources
are needed; it also fixes the Save/Copy Image actions as a side effect;
b) fix memory leak for tiff images;
c) let to Save/Copy Image handle base64-encoded "data:" URI-s (as
the source HTML message can still contain them);
d) shorten the URI in the error message when it's too long;
e) pass also "filename" into the URI, thus the Save Image has prefilled it,
the same as attachment's "Save as" action.
Reported downstream at:
https://bugzilla.redhat.com/show_bug.cgi?id=1657361
The GSettings values can be changed by anything, which means the user
can override the last stored window size to some large enough that
the gdk (or WebKitGTK+) will fail to allocated such large pixmap,
which can lead to a crash. This size clamp helps to avoid it.
Related to downstream bug:
https://bugzilla.redhat.com/show_bug.cgi?id=1657361
As geocode-glib is provided with a ./configure script the build system
in Flatpak had been chosen to be autotool, even the script calls meson
in the background. This script requires 'mesontest' binary, which had
been removed in meson 0.48.0. Using meson build system directly makes
the build work regardless of used meson version.