summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/calcurse.h3
-rw-r--r--src/calendar.c5
-rw-r--r--src/io.c8
-rw-r--r--src/notify.c5
-rw-r--r--src/vars.c6
5 files changed, 20 insertions, 7 deletions
diff --git a/src/calcurse.h b/src/calcurse.h
index 8b6d492..adb2c1e 100644
--- a/src/calcurse.h
+++ b/src/calcurse.h
@@ -100,6 +100,9 @@
#define DPID_PATH DIR_NAME DPID_PATH_NAME
#define NOTES_DIR DIR_NAME NOTES_DIR_NAME
+#define DEFAULT_EDITOR "vi"
+#define DEFAULT_PAGER "less"
+
#define ATTR_FALSE 0
#define ATTR_TRUE 1
#define ATTR_LOWEST 2
diff --git a/src/calendar.c b/src/calendar.c
index 160630e..8fea79d 100644
--- a/src/calendar.c
+++ b/src/calendar.c
@@ -145,7 +145,10 @@ void
calendar_stop_date_thread (void)
{
if (calendar_t_date)
- pthread_cancel (calendar_t_date);
+ {
+ pthread_cancel (calendar_t_date);
+ pthread_join (calendar_t_date, NULL);
+ }
}
/* Set static variable today to current date */
diff --git a/src/io.c b/src/io.c
index 6e3bf38..7b54632 100644
--- a/src/io.c
+++ b/src/io.c
@@ -2768,6 +2768,9 @@ io_import_data (enum import_type type, struct conf *conf, char *stream_name)
ngettext ("%d todo", "%d todos", stats.todos), stats.todos);
snprintf (stats_str[3], BUFSIZ, _("%d skipped"), stats.skipped);
+ /* Update the number of todo items. */
+ todo_set_nb (todo_nb () + stats.todos);
+
if (ui_mode == UI_CURSES && !conf->skip_system_dialogs)
{
char read[BUFSIZ], stat[BUFSIZ];
@@ -2911,7 +2914,10 @@ void
io_stop_psave_thread (void)
{
if (io_t_psave)
- pthread_cancel (io_t_psave);
+ {
+ pthread_cancel (io_t_psave);
+ pthread_join (io_t_psave, NULL);
+ }
}
/*
diff --git a/src/notify.c b/src/notify.c
index ae9bcbe..6529087 100644
--- a/src/notify.c
+++ b/src/notify.c
@@ -190,7 +190,10 @@ void
notify_stop_main_thread (void)
{
if (notify_t_main)
- pthread_cancel (notify_t_main);
+ {
+ pthread_cancel (notify_t_main);
+ pthread_join (notify_t_main, NULL);
+ }
}
/*
diff --git a/src/vars.c b/src/vars.c
index a659336..5155683 100644
--- a/src/vars.c
+++ b/src/vars.c
@@ -117,8 +117,6 @@ struct dmon_conf dmon;
void
vars_init (struct conf *conf)
{
- char *PATH_VI = "/usr/bin/vi";
- char *PATH_LESS = "/usr/bin/less";
char *ed, *pg;
/* Variables for user configuration */
@@ -137,12 +135,12 @@ vars_init (struct conf *conf)
if (ed == NULL || ed[0] == '\0')
ed = getenv ("EDITOR");
if (ed == NULL || ed[0] == '\0')
- ed = PATH_VI;
+ ed = DEFAULT_EDITOR;
conf->editor = ed;
pg = getenv ("PAGER");
if (pg == NULL || pg[0] == '\0')
- pg = PATH_LESS;
+ pg = DEFAULT_PAGER;
conf->pager = pg;
wins_set_layout (1);