introduce eprintf() to replace various error points - surf-adblock - Surf adblock web extension
(HTM) git clone git://git.codemadness.org/surf-adblock
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 94705d18c8191bd931b284dfc50c4c6f100ea65a
(DIR) parent 943b025897dd39e4b64755e6bafa890d35ea8ae1
(HTM) Author: Quentin Rameau <quinq@fifth.space>
Date: Sat, 16 Jul 2016 18:41:41 +0200
introduce eprintf() to replace various error points
Diffstat:
M surf-adblock.c | 54 ++++++++++++++++---------------
1 file changed, 28 insertions(+), 26 deletions(-)
---
(DIR) diff --git a/surf-adblock.c b/surf-adblock.c
@@ -111,16 +111,28 @@ static String globalcss;
static struct filterrule *rules;
static void
+eprintf(const char *fmt, ...)
+{
+ va_list ap;
+
+ fprintf(stderr, "surf-adblock: ");
+
+ va_start(ap, fmt);
+ vfprintf(stderr, fmt, ap);
+ va_end(ap);
+
+ exit(1);
+}
+
+static void
string_buffer_realloc(String *s, size_t newlen)
{
size_t alloclen;
for (alloclen = 64; alloclen <= newlen; alloclen *= 2)
;
- if (!(s->data = realloc(s->data, alloclen))) {
- fprintf(stderr, "realloc: %s\n", strerror(errno));
- exit(1);
- }
+ if (!(s->data = realloc(s->data, alloclen)))
+ eprintf("realloc: %s\n", strerror(errno));
s->bufsiz = alloclen;
}
@@ -143,10 +155,8 @@ ecalloc(size_t nmemb, size_t size)
{
void *p;
- if (!(p = calloc(nmemb, size))) {
- fprintf(stderr, "calloc: %s\n", strerror(errno));
- exit(1);
- }
+ if (!(p = calloc(nmemb, size)))
+ eprintf("calloc: %s\n", strerror(errno));
return p;
}
@@ -156,10 +166,8 @@ estrdup(const char *s)
{
char *p;
- if (!(p = strdup(s))) {
- fprintf(stderr, "strdup: %s\n", strerror(errno));
- exit(1);
- }
+ if (!(p = strdup(s)))
+ eprintf("strdup: %s\n", strerror(errno));
return p;
}
@@ -798,21 +806,15 @@ webkit_web_extension_initialize(WebKitWebExtension *ext)
n = snprintf(filepath, sizeof(filepath), "%s%s.surf/adblockrules",
e, e[0] && e[strlen(e) - 1] != '/' ? "/" : "");
}
- if (n < 0 || (size_t)n >= sizeof(filepath)) {
- fprintf(stderr, "fatal: path too long, truncated\n");
- return;
- }
+ if (n < 0 || (size_t)n >= sizeof(filepath))
+ eprintf("fatal: rules file path too long");
- if (!(fp = fopen(filepath, "r"))) {
- fprintf(stderr, "fatal: cannot read rules from file: %s: %s\n",
- filepath, strerror(errno));
- return;
- }
- if (!(rules = loadrules(fp))) {
- fprintf(stderr, "fatal: cannot read adblock rules from file: %s: %s\n",
- filepath, strerror(errno));
- return;
- }
+ if (!(fp = fopen(filepath, "r")))
+ eprintf("fatal: cannot open rules file %s: %s\n",
+ filepath, strerror(errno));
+ if (!(rules = loadrules(fp)))
+ eprintf("fatal: cannot read rules file %s: %s\n",
+ filepath, strerror(errno));
fclose(fp);
/* general CSS rules: all sites */