X-Git-Url: https://git.deb.at/w?a=blobdiff_plain;f=abook.c;h=502aae228ed1b11f293ccd3c06e0b7225a97d63e;hb=ca5c3086c7ff9c99645a66fd0c21167ef60ba0e9;hp=1651267a541ef44bc5352786ca121777ce298fd3;hpb=4f4b00f8dd2fee76efe3d068d4fdfdb714d1d39f;p=pkg%2Fabook.git diff --git a/abook.c b/abook.c index 1651267..502aae2 100644 --- a/abook.c +++ b/abook.c @@ -52,8 +52,6 @@ static char *rcfile = NULL; // custom formatting char custom_format[FORMAT_STRING_LEN] = "{nick} ({name}): {mobile}"; -char *parsed_custom_format = NULL; -enum field_types *custom_format_fields = 0; struct abook_output_item_filter selected_item_filter; bool alternative_datafile = FALSE; @@ -342,7 +340,7 @@ parse_command_line(int argc, char **argv) { 0, 0, 0, 0 } }; - c = getopt_long(argc, argv, "hC:", + c = getopt_long(argc, argv, "hC:f:", long_options, &option_index); if(c == -1) @@ -420,9 +418,6 @@ parse_command_line(int argc, char **argv) fprintf(stderr, _("Invalid custom format string\n")); exit(EXIT_FAILURE); } - parsed_custom_format = (char *)malloc(FORMAT_STRING_LEN * sizeof(char*)); - custom_format_fields = (enum field_types *)malloc(FORMAT_STRING_MAX_FIELDS * sizeof(enum field_types *)); - parse_custom_format(custom_format, parsed_custom_format, custom_format_fields); } if(optind < argc) { fprintf(stderr, _("%s: unrecognized arguments on command line\n"), @@ -446,10 +441,10 @@ parse_command_line(int argc, char **argv) static void show_usage() { - puts (PACKAGE " v " VERSION "\n"); + puts (PACKAGE " v" VERSION "\n"); puts (_(" -h --help show usage")); puts (_(" -C --config use an alternative configuration file")); - puts (_(" --datafile use an alternative addressbook file")); + puts (_(" -f --datafile use an alternative addressbook file")); puts (_(" --mutt-query make a query for mutt")); puts (_(" --add-email " "read an e-mail message from stdin and\n" @@ -704,7 +699,7 @@ convert(char *srcformat, char *srcfile, char *dstformat, char *dstfile) * --add-email handling */ -static int add_email_count = 0; +static int add_email_count = 0, add_email_found = 0; static void quit_add_email() @@ -715,7 +710,7 @@ quit_add_email() exit(EXIT_FAILURE); } printf(_("%d item(s) added to %s\n"), add_email_count, datafile); - } else { + } else if (add_email_found == 0) { puts(_("Valid sender address not found")); } @@ -814,6 +809,7 @@ add_email(int quiet) do { line = getaline(stdin); if(line && !strncasecmp("From:", line, 5) ) { + add_email_found++; getname(line, &name, &email); add_email_count += add_email_add_item(quiet, name, email);