X-Git-Url: http://www.privoxy.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=actions.c;h=ca8e78a397d79db202536cbad62057073217cd36;hb=e866a10d8d231d1ad35362b0d3a95b0aced40c19;hp=a68bf1b971155bc4968457777c139f6f4a2b7896;hpb=e368c8ec22b18e8f01bbb51ff8d13165e2846ee7;p=privoxy.git
diff --git a/actions.c b/actions.c
index a68bf1b9..ca8e78a3 100644
--- a/actions.c
+++ b/actions.c
@@ -1,4 +1,4 @@
-const char actions_rcs[] = "$Id: actions.c,v 1.63 2011/03/03 14:38:36 fabiankeil Exp $";
+const char actions_rcs[] = "$Id: actions.c,v 1.68 2011/04/19 13:00:47 fabiankeil Exp $";
/*********************************************************************
*
* File : $Source: /cvsroot/ijbswa/current/actions.c,v $
@@ -1249,7 +1249,14 @@ static int load_one_actions_file(struct client_state *csp, int fileid)
}
init_action(cur_action);
- /* trim { */
+ /*
+ * Copy the buffer before messing with it as we may need the
+ * unmodified version in for the fatal error messages. Given
+ * that this is not a common event, we could instead simply
+ * read the line again.
+ *
+ * buf + 1 to skip the leading '{'
+ */
actions_buf = strdup(buf + 1);
if (actions_buf == NULL)
{
@@ -1267,8 +1274,8 @@ static int load_one_actions_file(struct client_state *csp, int fileid)
/* No closing } */
fclose(fp);
freez(actions_buf);
- log_error(LOG_LEVEL_FATAL,
- "can't load actions file '%s': invalid line (%lu): %s",
+ log_error(LOG_LEVEL_FATAL, "can't load actions file '%s': "
+ "Missing trailing '}' in action section starting at line (%lu): %s",
csp->config->actions_file[fileid], linenum, buf);
return 1; /* never get here */
}
@@ -1282,8 +1289,8 @@ static int load_one_actions_file(struct client_state *csp, int fileid)
/* error */
fclose(fp);
freez(actions_buf);
- log_error(LOG_LEVEL_FATAL,
- "can't load actions file '%s': invalid line (%lu): %s",
+ log_error(LOG_LEVEL_FATAL, "can't load actions file '%s': "
+ "can't completely parse the action section starting at line (%lu): %s",
csp->config->actions_file[fileid], linenum, buf);
return 1; /* never get here */
}
@@ -1312,7 +1319,7 @@ static int load_one_actions_file(struct client_state *csp, int fileid)
return 1; /* never get here */
}
- num_fields = ssplit(version_string, ".", fields, 3, TRUE, FALSE);
+ num_fields = ssplit(version_string, ".", fields, SZ(fields), TRUE, FALSE);
if (num_fields < 1 || atoi(fields[0]) == 0)
{
@@ -1441,7 +1448,7 @@ static int load_one_actions_file(struct client_state *csp, int fileid)
{
fclose(fp);
log_error(LOG_LEVEL_FATAL,
- "can't load actions file '%s': line %lu: cannot create URL pattern from: %s",
+ "can't load actions file '%s': line %lu: cannot create URL or TAG pattern from: %s",
csp->config->actions_file[fileid], linenum, buf);
return 1; /* never get here */
}
@@ -1587,7 +1594,7 @@ char * actions_to_text(const struct action_spec *action)
* Function : actions_to_html
*
* Description : Converts a actionsfile entry from numeric form
- * ("mask" and "add") to a
-seperated HTML string
+ * ("mask" and "add") to a
-separated HTML string
* in which each action is linked to its chapter in
* the user manual.
*
@@ -1693,7 +1700,7 @@ char * actions_to_html(const struct client_state *csp,
*
* Function : current_actions_to_html
*
- * Description : Converts a curren action spec to a
seperated HTML
+ * Description : Converts a curren action spec to a
separated HTML
* text in which each action is linked to its chapter in
* the user manual.
*