[ekg2-commit] ekg2: drafts.c (HEAD) jogger.c (HEAD) [peres]
CVS commit
cvs w toxygen.net
Nie, 6 Maj 2007, 11:16:35 CEST
Module name: ekg2
Changes by: peres 2007-05-06 11:16:33
Modified files:
drafts.c jogger.c
Log message:
Checking values.
Index: drafts.c
===================================================================
RCS file: /home/cvs/ekg2/plugins/jogger/drafts.c,v
diff -d -u -r1.3 -r1.4
--- drafts.c 6 May 2007 08:38:01 -0000 1.3
+++ drafts.c 6 May 2007 09:16:33 -0000 1.4
@@ -17,9 +17,10 @@
#include <errno.h>
#include <fcntl.h>
+#include <stdlib.h>
#include <unistd.h>
-#include <sys/mman.h> /* mmap */
+#include <sys/mman.h>
#include <sys/types.h>
#include <sys/stat.h>
@@ -38,18 +39,17 @@
"poziom:", "level:", NULL,
"kategoria:", "category:", "kategorie:", "categories", NULL, /* 4 */
"trackback:", NULL, /* 5 */
- "tidy", NULL, /* 6 - XXX jhv, 1st */
- "komentarze", "comments:", NULL, /* 7 - XXX jhv, 1&2 */
+ "tidy", NULL, /* 6 */
+ "komentarze", "comments:", NULL, /* 7 */
"miniblog:", NULL, /* 8 - deprecated */
NULL
};
const char *jogger_header_values[] = {
"off", "no", "nie", "wylacz", "wyĹÄ
cz",
- "on", "yes", "tak", "wlacz", "wĹÄ
cz",
- "0", "1", NULL,
+ "on", "yes", "tak", "wlacz", "wĹÄ
cz", NULL,
- "jogger", "2", NULL,
+ "jogger", NULL,
NULL
};
@@ -142,7 +142,7 @@
if (!next)
s = entry+fs;
} else if ((*(s+1) == ' ') || (*(sep-1) == ' '))
- print("jogger_warning_wrongkey_spaces", tmp);
+ print("jogger_warning_wrong_key_spaces", tmp);
else {
int i = 1;
const char **p = (sep-s < 12 ? jogger_header_keys : NULL);
@@ -162,7 +162,7 @@
}
if (!p || !*p)
- print("jogger_warning_wrongkey", tmp);
+ print("jogger_warning_wrong_key", tmp);
else if (i == 4) {
char *values = xstrndup(sep+1, end-sep-1);
if (cssfind(values, "techblog", ',', 1) && cssfind(values, "miniblog", ',', 1))
@@ -172,6 +172,35 @@
const char *first = sep+1+xstrcspn(sep+1, " ");
if (xstrncmp(first, "http://", 7) && xstrncmp(first, "https://", 8)) /* XXX: https trackbacks? */
print("jogger_warning_malformed_url", tmp);
+ } else if (i == 6 || i == 7) {
+ const int jmax = i-5;
+ int j = 1;
+ char *myval = xstrndup(sep+1, end-sep-1);
+ const char **q = jogger_header_values;
+
+ for (; *q && j <= jmax; j++, q++) { /* second NULL or jmax */
+ for (; *q; q++) { /* first NULL */
+ if (!xstrcasecmp(myval, *q))
+ break;
+ }
+ if (*q)
+ break;
+ }
+
+ if (!*q || (j > jmax)) {
+ char *endval;
+ int n = strtol(myval, &endval, 10);
+
+ if (n == 0 && endval == myval) {
+ if (*myval == ' ' || *(myval+xstrlen(myval)-1) == ' ')
+ print("jogger_warning_wrong_value_spaces", tmp);
+ else
+ print("jogger_warning_wrong_value", tmp);
+ }
+ if (n > jmax)
+ print("jogger_warning_wrong_value", tmp);
+ }
+ xfree(myval);
} else if (i == 8)
print("jogger_warning_deprecated_miniblog", tmp);
}
Index: jogger.c
===================================================================
RCS file: /home/cvs/ekg2/plugins/jogger/jogger.c,v
diff -d -u -r1.15 -r1.16
--- jogger.c 6 May 2007 08:38:01 -0000 1.15
+++ jogger.c 6 May 2007 09:16:33 -0000 1.16
@@ -229,11 +229,13 @@
format_add("jogger_emptyfile", _("%! File is empty!"), 1);
format_add("jogger_warning", _("%> During QA check of the entry, following warnings have been issued:"), 1);
format_add("jogger_warning_brokenheader", _("%> %|* Header with broken syntax found at: %c%1%n"), 1);
- format_add("jogger_warning_wrongkey", _("%> %|* Header contains unknown/wrong key at: %c%1%n"), 1);
- format_add("jogger_warning_wrongkey_spaces", _("%> %|* Key in header mustn't be followed or preceeded by spaces at: %c%1%n"), 1);
+ format_add("jogger_warning_wrong_key", _("%> %|* Header contains unknown/wrong key at: %c%1%n"), 1);
+ format_add("jogger_warning_wrong_key_spaces", _("%> %|* Key in header mustn't be followed or preceeded by spaces at: %c%1%n"), 1);
format_add("jogger_warning_deprecated_miniblog", _("%> %|* Key %Tminiblog%n is deprecated in favor of such category at: %c%1%n"), 1);
format_add("jogger_warning_miniblog_techblog", _("%> %|* Miniblog entry will be posted to Techblog at: %c%1%n"), 1);
format_add("jogger_warning_malformed_url", _("%> %|* Malformed URL found at: %c%1%n"), 1);
+ format_add("jogger_warning_wrong_value", _("%> %|* Incorrect value found at: %c%1%n"), 1);
+ format_add("jogger_warning_wrong_value_spaces", _("%> %|* Incorrent value found (try to remove leading&trailing spaces) at: %c%1%n"), 1);
format_add("jogger_warning_duplicated_header", _("%> %|* Duplicated header found at: %c%1%n"), 1);
format_add("jogger_warning_mislocated_header", _("%> %|* Mislocated header (?) at: %c%1%n"), 1);
format_add("jogger_warning_noexcerpt", _("%> %|* Entry text size exceeds 4096 bytes, but no <EXCERPT> tag has been found. It will be probably cut by Jogger near: ...%c%1%n..."), 1);
Więcej informacji o liście dyskusyjnej ekg2-commit