* src/summaryview.c
I think I killed the twilight zone bug!
summary_select_node() flushes GTK events in order
to be able to center the view. But this also
flushes keypresses like Ctrl-Alt-U, so this can
call summary_show from summary_select_node (itself
called from summary_show, etc.). And the summaryview
has to be unlocked in this function. So just locking
while processing GTK events, and bailing if locked,
should fix it.
Fixes bug #927 (SIGSEGV during Update Summary)
* src/matcher.c
Fix search in QP-encoded bodies
Fix utf-8 searches in bodies encoded in the
locale's encoding
* src/common/quoted-printable.c
* src/common/quoted-printable.h
Add a decode function that doesn't overwrite
the original pointer
* src/summaryview.c
* src/gtk/description_window.c
fix display of From/To column title when in appropriate folders (queue/sent/drafts)
and headers are translated; adjust description windows' width to fit their
contents. Patches by Pawel Pekala <c0rn@o2.pl>.
* src/common/utils.c
revert patch, (postponing a fix), at 2.0.0cvs120
as it breaks more URIs than it fixes.
Allow '-' to be a terminating character in a URI
* src/addressbook.c
allow sorting by name/email/remarks, ensure that right-pane's contents
matches the left-pane selection (cleared when appropriate).
Patch by Pawel Pekala <c0rn@o2.pl>.
* src/summaryview.c
Set cursor to watch for execution (fixes lack
of watch-cursor when dnd'ing hundreds of mails)
* src/gtk/filesel.c
Check that mime type is 'image/*' before updating
the preview (maybe fix crashes on Solaris+gtk2.8.4 ?)
* src/mainwindow.c
* src/mainwindow.h
* src/prefs_msg_colors.c
* src/summaryview.c
* src/summaryview.h
* src/gtk/colorlabel.c
* src/gtk/colorlabel.h
Add a color label menu in the main menubar
Add (fixed) accels Ctrl-{0-7} to change the color
They have to be fixed because the menu's dynamic,
the items are complex widgets, hence we can't use
a GtkItemFactory.
* src/compose.c
rollback few lines from my previous commit (those lines come from
a pending patch, accidentally commited, even if neutral as they are
commented out).
* src/procmsg.h
* src/procmsg.c
* src/folder.c
Fix POSTPROCESSING hook
Patch by H. Merijn Brand
* src/procmime.c
* src/procmime.h
Parse Content-Location
* src/toolbar.c
* src/messageview.c
* src/messageview.h
Don't crash when a top-level MessageView has
been closed on us. Same problematic than
yesterday's quicksearch issue.
* src/gtk/quicksearch.c
Fix a bitchy race we didn't think about when we
added quicksearch cancellation:
If the search is not on cached fields, for example
body_part matchcase "stuff"
the matcher code has to get the whole message. If
we're on IMAP, that can be slow, and in order to
be non-blocking, the IMAP code idle loop processes
gtk events too. So it is possible to cancel a
quicksearch while the matcher is getting the mail's
body. After matcher got its body, it will start to
iterate over the matcher list that the Quicksearch's
clear_search_cb() just freed via prepare_matcher().
SIGSEGV ensues.
The fix consists of guarding the matcherlist_match()
call with a boolean 'matching'. If we reset the
quicksearch while matching is TRUE, we don't free
the matcherlist anymore like we did, but we set
another new flag, deferred_free, to TRUE. Then,
in quicksearch_match(), just after returning from
matcherlist_match() and unsetting the matching flag,
we check the deferred_free flag and do the
prepare_matcher() (which does the matcherlist_free)
for real, so we free the matcherlist once it's not
used anymore.
As all of this runs via the glib main loop, we
luckily don't need a mutex.
* src/summaryview.c
Also, show progress while searching.
* src/prefs_matcher.c
give a little more width to the combos
* src/prefs_display_header.c
* src/textview.c
translate headers if prefs_common.trans_hdr
is TRUE
Patches by Pawel Pekala
* src/plugins/clamav/clamav_plugin.c
* src/plugins/dillo_viewer/dillo_viewer.c
* src/plugins/pgpcore/plugin.c
* src/plugins/pgpinline/plugin.c
* src/plugins/pgpmime/plugin.c
* src/plugins/spamassassin/spamassassin.c
update/add to descriptions
* src/plugins/spamassassin/spamassassin_gtk.c
fixes to the english, remove superfluous
tooltips, clean up a little
* src/summaryview.c
Revert 2.0.0cvs84 which reverted 1.9.6cvs23 which
messed up shift-selection because is slows down
moving around summaryview. thanks -users
* src/addressadd.c
* src/foldersel.c
* src/prefs_common.c
* src/prefs_common.h
remember some more windows' sizes (add to addressbook and
select folder).