aboutsummaryrefslogtreecommitdiff
path: root/libsylph/filter.c
diff options
context:
space:
mode:
authorhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-10-20 08:10:46 +0000
committerhiro <hiro@ee746299-78ed-0310-b773-934348b2243d>2005-10-20 08:10:46 +0000
commit042fdf893eb605dec5e96fd42a15e2f8616458de (patch)
treec35527cafbab55734929d3cc772d65b6e315785b /libsylph/filter.c
parentb9112be97d8a5d786658378212d3dd95dbff1ee9 (diff)
fixed execution failure on filtering if a file path includes space.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@670 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'libsylph/filter.c')
-rw-r--r--libsylph/filter.c10
1 files changed, 5 insertions, 5 deletions
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);