+2003-12-11 [christoph] 0.9.7claws38
+
+ * src/crash.c
+ * src/main.[ch]
+ make sure the clean_exit() funtion is not called again by the
+ signal handler while it is already running
+
+ * src/summaryview.c
+ fix wrong assertion
+
2003-12-11 [paul] 0.9.7claws37
* src/compose.c
* src/plugins/clamav/clamav_plugin.c
fix (don't break) signature count
use cl_strerror() instead of deprecated cl_perror()
-
2003-12-11 [darko] 0.9.7claws35
MICRO_VERSION=7
INTERFACE_AGE=0
BINARY_AGE=0
-EXTRA_VERSION=37
+EXTRA_VERSION=38
if test $EXTRA_VERSION -eq 0; then
VERSION=${MAJOR_VERSION}.${MINOR_VERSION}.${MICRO_VERSION}claws
else
#ifdef SIGTERM
if (sig == SIGTERM)
- clean_quit();
+ clean_quit(NULL);
#endif
/*
}
}
-void clean_quit(void)
+gboolean clean_quit(gpointer data)
{
+ static gboolean firstrun = TRUE;
+
+ if (!firstrun)
+ return FALSE;
+ firstrun = FALSE;
+
/*!< Good idea to have the main window stored in a
* static variable so we can check that variable
* to see if we're really allowed to do things
* in the original spawner, and not in a spawned
* child. */
if (!static_mainwindow)
- return;
+ return FALSE;
draft_all_messages();
} else {
app_will_exit(NULL, static_mainwindow);
}
- exit(0);
+
+ return FALSE;
}
void app_will_exit(GtkWidget *widget, gpointer data)
static void quit_signal_handler(int sig)
{
debug_print("Quitting on signal %d\n", sig);
- clean_quit();
+
+ g_timeout_add(0, clean_quit, NULL);
}
static void install_basic_sighandlers()
extern gboolean debug_mode;
void app_will_exit (GtkWidget *widget, gpointer data);
-void clean_quit (void);
+gboolean clean_quit (gpointer data);
#endif /* __MAIN_H__ */
#include "matcher_parser.h"
#include "hooks.h"
#include "description_window.h"
-#include "folder.h"
#define SUMMARY_COL_MARK_WIDTH 10
#define SUMMARY_COL_STATUS_WIDTH 13
g_return_if_fail(msginfo->folder != NULL);
g_return_if_fail(msginfo->folder->folder != NULL);
mff = msginfo->folder->folder;
- g_return_if_fail(mff->klass->type != F_NEWS);
+ g_return_if_fail(mff->klass->type == F_NEWS);
if (mff->account->mark_crosspost_read) {
line = g_string_sized_new(128);