aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.ja5
-rw-r--r--libsylph/filter.c10
3 files changed, 15 insertions, 5 deletions
diff --git a/ChangeLog b/ChangeLog
index 2ef27f27..6800f1c6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2005-10-20
+ * libsylph/filter.c: fixed execution failure if a file path includes
+ space.
+
+2005-10-20
+
* src/textview.c: fixed a problem that the view was scrolled to top
when it got focus.
diff --git a/ChangeLog.ja b/ChangeLog.ja
index 56f07030..6fdf88ab 100644
--- a/ChangeLog.ja
+++ b/ChangeLog.ja
@@ -1,5 +1,10 @@
2005-10-20
+ * libsylph/filter.c: ファイルパスが空白を含むときに実行に失敗して
+ いたバグを修正。
+
+2005-10-20
+
* src/textview.c: ビューがフォーカスを得たときに先頭にスクロールして
しまう問題を修正。
diff --git a/libsylph/filter.c b/libsylph/filter.c
index cdf3deef..d4acc6a7 100644
--- a/libsylph/filter.c
+++ b/libsylph/filter.c
@@ -169,15 +169,15 @@ gint filter_action_exec(FilterRule *rule, MsgInfo *msginfo, const gchar *file,
fltinfo->actions[action->type] = TRUE;
break;
case FLT_ACTION_EXEC:
- cmdline = g_strconcat(action->str_value, " ", file,
- NULL);
+ cmdline = g_strconcat(action->str_value, " \"", file,
+ "\"", NULL);
execute_command_line(cmdline, FALSE);
g_free(cmdline);
fltinfo->actions[action->type] = TRUE;
break;
case FLT_ACTION_EXEC_ASYNC:
- cmdline = g_strconcat(action->str_value, " ", file,
- NULL);
+ cmdline = g_strconcat(action->str_value, " \"", file,
+ "\"", NULL);
execute_command_line(cmdline, TRUE);
g_free(cmdline);
fltinfo->actions[action->type] = TRUE;
@@ -365,7 +365,7 @@ static gboolean filter_match_cond(FilterCond *cond, MsgInfo *msginfo,
break;
case FLT_COND_CMD_TEST:
file = procmsg_get_message_file(msginfo);
- cmdline = g_strconcat(cond->str_value, " ", file, NULL);
+ cmdline = g_strconcat(cond->str_value, " \"", file, "\"", NULL);
matched = (execute_command_line(cmdline, FALSE) == 0);
g_free(cmdline);
g_free(file);