+2006-03-16 [colin] 2.0.0cvs144
+
+ * src/sourcewindow.c
+ * src/sourcewindow.h
+ And the last one, in source window.
+
2006-03-16 [colin] 2.0.0cvs143
* src/compose.c
( cvs diff -u -r 1.150.2.57 -r 1.150.2.58 src/procmsg.c; cvs diff -u -r 1.60.2.26 -r 1.60.2.27 src/procmsg.h; cvs diff -u -r 1.213.2.85 -r 1.213.2.86 src/folder.c; cvs diff -u -r 1.49.2.74 -r 1.49.2.75 src/procmime.c; cvs diff -u -r 1.17.2.14 -r 1.17.2.15 src/procmime.h; cvs diff -u -r 1.43.2.41 -r 1.43.2.42 src/toolbar.c; cvs diff -u -r 1.94.2.80 -r 1.94.2.81 src/messageview.c; cvs diff -u -r 1.19.2.7 -r 1.19.2.8 src/messageview.h; ) > 2.0.0cvs141.patchset
( cvs diff -u -r 1.94.2.81 -r 1.94.2.82 src/messageview.c; ) > 2.0.0cvs142.patchset
( cvs diff -u -r 1.382.2.250 -r 1.382.2.251 src/compose.c; cvs diff -u -r 1.50.2.22 -r 1.50.2.23 src/compose.h; ) > 2.0.0cvs143.patchset
+( cvs diff -u -r 1.9.2.16 -r 1.9.2.17 src/sourcewindow.c; cvs diff -u -r 1.1.1.1.16.2 -r 1.1.1.1.16.3 src/sourcewindow.h; ) > 2.0.0cvs144.patchset
void source_window_destroy(SourceWindow *sourcewin)
{
+ if (sourcewin->updating) {
+ debug_print("deferring destroy\n");
+ sourcewin->deferred_destroy = TRUE;
+ return;
+ }
gtk_widget_destroy(sourcewin->window);
g_free(sourcewin);
}
g_return_if_fail(msginfo != NULL);
+ sourcewin->updating = TRUE;
file = procmsg_get_message_file(msginfo);
+ sourcewin->updating = FALSE;
+
+ if (sourcewin->deferred_destroy) {
+ g_free(file);
+ source_window_destroy(sourcewin);
+ return;
+ }
+
g_return_if_fail(file != NULL);
if ((fp = g_fopen(file, "rb")) == NULL) {