talons

Fork of Claws Mail https://www.claws-mail
Log | Files | Refs | README | LICENSE

commit 40931bb8e5ffec5fd3ece6afe96ffdb508c471a5
parent d38427931d74aaf699713f1611a89d80a010ce4c
Author: Ricardo Mones <ricardo@mones.org>
Date:   Wed, 17 Mar 2021 00:01:55 +0100

Fix segfault invoking function from python code

When using python code is possible to add new menu items invoking module
functions. Since they're added on-the-fly, these items can't be included
in the logic which enables or disables menu entries according UI status.
Hence the functions need checking what's really available instead of
relying on the inability of users to not invoke the funcion through UI.

There's probably more functions which need similar fixes, though, this
one just appeared when trying to convert startup example to python3.

Thread 1 "claws-mail" received signal SIGSEGV, Segmentation fault.
0x0000000000583efa in summary_mark_as_read (summaryview=0xd9dc70) at summaryview.c:4179
4179            if ((summaryview->folder_item->total_msgs == (gint)g_list_length(GTK_CMCLIST(ctree)->selection) &&

Diffstat:
Msrc/summaryview.c | 3+++
1 file changed, 3 insertions(+), 0 deletions(-)

diff --git a/src/summaryview.c b/src/summaryview.c @@ -4176,6 +4176,9 @@ void summary_mark_as_read(SummaryView *summaryview) if (summary_is_locked(summaryview)) return; + if (!summaryview->folder_item) + return; + if ((summaryview->folder_item->total_msgs == (gint)g_list_length(GTK_CMCLIST(ctree)->selection) && summaryview->folder_item->total_msgs > 1) && !summary_mark_all_read_confirm(TRUE))