X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=notmuch-config.c;h=1a7ed580ec290c85881871c434b762a03bc87b92;hp=e98c39755f2f6e52d389481d06fbc333fd570c64;hb=3434d194026ff65217d9342ffe511f67fd71e79f;hpb=89954b453c7b97a5d173bb87f3f2bbc0510425c2 diff --git a/notmuch-config.c b/notmuch-config.c index e98c3975..1a7ed580 100644 --- a/notmuch-config.c +++ b/notmuch-config.c @@ -69,7 +69,7 @@ static const char maildir_config_comment[] = "\tsynchronize_flags Valid values are true and false.\n" "\n" "\tIf true, then the following maildir flags (in message filenames)\n" - "\twill be syncrhonized with the corresponding notmuch tags:\n" + "\twill be synchronized with the corresponding notmuch tags:\n" "\n" "\t\tFlag Tag\n" "\t\t---- -------\n" @@ -77,7 +77,7 @@ static const char maildir_config_comment[] = "\t\tF flagged\n" "\t\tP passed\n" "\t\tR replied\n" - "\t\tS unread (added when 'S' tag is not present)\n" + "\t\tS unread (added when 'S' flag is not present)\n" "\n" "\tThe \"notmuch new\" command will notice flag changes in filenames\n" "\tand update tags, while the \"notmuch tag\" and \"notmuch restore\"\n" @@ -109,13 +109,15 @@ notmuch_config_destructor (notmuch_config_t *config) static char * get_name_from_passwd_file (void *ctx) { - long pw_buf_size = sysconf(_SC_GETPW_R_SIZE_MAX); - char *pw_buf = talloc_zero_size (ctx, pw_buf_size); + long pw_buf_size; + char *pw_buf; struct passwd passwd, *ignored; char *name; int e; + pw_buf_size = sysconf(_SC_GETPW_R_SIZE_MAX); if (pw_buf_size == -1) pw_buf_size = 64; + pw_buf = talloc_size (ctx, pw_buf_size); while ((e = getpwuid_r (getuid (), &passwd, pw_buf, pw_buf_size, &ignored)) == ERANGE) { @@ -142,13 +144,16 @@ get_name_from_passwd_file (void *ctx) static char * get_username_from_passwd_file (void *ctx) { - long pw_buf_size = sysconf(_SC_GETPW_R_SIZE_MAX); - char *pw_buf = talloc_zero_size (ctx, pw_buf_size); + long pw_buf_size; + char *pw_buf; struct passwd passwd, *ignored; char *name; int e; + pw_buf_size = sysconf(_SC_GETPW_R_SIZE_MAX); if (pw_buf_size == -1) pw_buf_size = 64; + pw_buf = talloc_zero_size (ctx, pw_buf_size); + while ((e = getpwuid_r (getuid (), &passwd, pw_buf, pw_buf_size, &ignored)) == ERANGE) { pw_buf_size = pw_buf_size * 2; @@ -730,6 +735,8 @@ notmuch_config_command_set (void *ctx, char *item, int argc, char *argv[]) int notmuch_config_command (void *ctx, int argc, char *argv[]) { + argc--; argv++; /* skip subcommand argument */ + if (argc < 2) { fprintf (stderr, "Error: notmuch config requires at least two arguments.\n"); return 1;