# HG changeset patch # User markus schnalke # Date 1291415143 10800 # Node ID 00724782b6c9a6c68cadd76757bf11dbd42d8c8e # Parent 681863fdafbb22c8805c748d74ed4edad5135ae2 parse.c: comments, better debugging, tiny refactoring diff -r 681863fdafbb -r 00724782b6c9 src/parse.c --- a/src/parse.c Fri Dec 03 19:13:25 2010 -0300 +++ b/src/parse.c Fri Dec 03 19:25:43 2010 -0300 @@ -146,7 +146,7 @@ *domain_begin = *domain_end = NULL; /* might be some memory left from previous call: */ - if (parse_error != NULL) { + if (parse_error) { g_free(parse_error); parse_error = NULL; } @@ -250,6 +250,9 @@ } else if (strchr(specials, *p) || iscntrl(*p) || isspace(*p)) { parse_error = g_strdup_printf("unexpected character: %c", *p); +#ifdef PARSE_TEST + g_print("unexpected character: %c", *p); +#endif return FALSE; } } @@ -382,6 +385,7 @@ gchar *addr_end; gboolean ret; + /* TODO: what about (string == NULL)? */ if (string && (string[0] == '\0')) { address *addr = g_malloc(sizeof(address)); addr->address = g_strdup(""); @@ -423,7 +427,7 @@ if (dom_beg != NULL) { addr->domain = g_strndup(dom_beg, dom_end - dom_beg); - } else if (addr->local_part[0] == 0) { + } else if (addr->local_part[0] == '\0') { /* 'NULL' address (failure notice), "" makes sure it will not be qualified with a hostname */ addr->domain = g_strdup(""); @@ -431,7 +435,7 @@ addr->domain = NULL; } - if (end != NULL) { + if (end) { *end = p; } @@ -461,18 +465,24 @@ gchar *end; while (*p) { +#ifdef PARSE_TEST + g_print("string: %s\n", p); +#endif + address *addr = _create_address(p, &end, FALSE); - fprintf(stderr, "string: %s\n", p); - if (!addr) { break; } - fprintf(stderr, " addr: %s (%s<@>%s)\n", addr->address, addr->local_part, addr->domain); +#ifdef PARSE_TEST + g_print("addr: %s (%s<@>%s)", addr->address, addr->local_part, addr->domain); +#endif if (domain && !addr->domain) { addr->domain = g_strdup(domain); } - fprintf(stderr, " %s (%s<@>%s)\n", addr->address, addr->local_part, addr->domain); +#ifdef PARSE_TEST + g_print(" (%s<@>%s)\n", addr->local_part, addr->domain); +#endif addr_list = g_list_append(addr_list, addr); p = end;