Просмотр исходного кода

make complaints about unrecognized keywords more verbose

tell the user in what section the keyword appeared, as that may help
spotting mistakes like stray empty lines.
Oswald Buddenhagen 5 лет назад
Родитель
Сommit
09341c10c5
5 измененных файлов с 11 добавлено и 9 удалено
  1. 4 3
      src/config.c
  2. 2 2
      src/driver.c
  3. 1 1
      src/driver.h
  4. 3 2
      src/drv_imap.c
  5. 1 1
      src/drv_maildir.c

+ 4 - 3
src/config.c

@@ -425,7 +425,8 @@ load_config( const char *where )
 					if (*++p)
 					if (*++p)
 						channel->boxes[fn] = nfstrdup( p );
 						channel->boxes[fn] = nfstrdup( p );
 				} else if (!getopt_helper( &cfile, &cops, channel )) {
 				} else if (!getopt_helper( &cfile, &cops, channel )) {
-					error( "%s:%d: unknown keyword '%s'\n", cfile.file, cfile.line, cfile.cmd );
+					error( "%s:%d: keyword '%s' is not recognized in Channel sections\n",
+					       cfile.file, cfile.line, cfile.cmd );
 					cfile.err = 1;
 					cfile.err = 1;
 				}
 				}
 			}
 			}
@@ -476,7 +477,7 @@ load_config( const char *where )
 				}
 				}
 				else
 				else
 				{
 				{
-					error( "%s:%d: unknown keyword '%s'\n",
+					error( "%s:%d: keyword '%s' is not recognized in Group sections\n",
 					       cfile.file, cfile.line, cfile.cmd );
 					       cfile.file, cfile.line, cfile.cmd );
 					cfile.err = 1;
 					cfile.err = 1;
 				}
 				}
@@ -511,7 +512,7 @@ load_config( const char *where )
 		}
 		}
 		else if (!getopt_helper( &cfile, &gcops, &global_conf ))
 		else if (!getopt_helper( &cfile, &gcops, &global_conf ))
 		{
 		{
-			error( "%s:%d: unknown section keyword '%s'\n",
+			error( "%s:%d: '%s' is not a recognized section-starting or global keyword\n",
 			       cfile.file, cfile.line, cfile.cmd );
 			       cfile.file, cfile.line, cfile.cmd );
 			cfile.err = 1;
 			cfile.err = 1;
 			while (getcline( &cfile ))
 			while (getcline( &cfile ))

+ 2 - 2
src/driver.c

@@ -49,7 +49,7 @@ free_generic_messages( message_t *msgs )
 }
 }
 
 
 void
 void
-parse_generic_store( store_conf_t *store, conffile_t *cfg )
+parse_generic_store( store_conf_t *store, conffile_t *cfg, const char *type )
 {
 {
 	if (!strcasecmp( "Trash", cfg->cmd )) {
 	if (!strcasecmp( "Trash", cfg->cmd )) {
 		store->trash = nfstrdup( cfg->val );
 		store->trash = nfstrdup( cfg->val );
@@ -72,7 +72,7 @@ parse_generic_store( store_conf_t *store, conffile_t *cfg )
 		}
 		}
 		store->flat_delim = nfstrdup( cfg->val );
 		store->flat_delim = nfstrdup( cfg->val );
 	} else {
 	} else {
-		error( "%s:%d: unknown keyword '%s'\n", cfg->file, cfg->line, cfg->cmd );
+		error( "%s:%d: keyword '%s' is not recognized in %s sections\n", cfg->file, cfg->line, cfg->cmd, type );
 		cfg->err = 1;
 		cfg->err = 1;
 	}
 	}
 }
 }

+ 1 - 1
src/driver.h

@@ -276,7 +276,7 @@ struct driver {
 uint count_generic_messages( message_t * );
 uint count_generic_messages( message_t * );
 void free_generic_messages( message_t * );
 void free_generic_messages( message_t * );
 
 
-void parse_generic_store( store_conf_t *store, conffile_t *cfg );
+void parse_generic_store( store_conf_t *store, conffile_t *cfg, const char *type );
 
 
 store_t *proxy_alloc_store( store_t *real_ctx, const char *label );
 store_t *proxy_alloc_store( store_t *real_ctx, const char *label );
 
 

+ 3 - 2
src/drv_imap.c

@@ -3529,10 +3529,11 @@ imap_parse_store( conffile_t *cfg, store_conf_t **storep )
 				}
 				}
 				store->delimiter = cfg->val[0];
 				store->delimiter = cfg->val[0];
 			} else
 			} else
-				parse_generic_store( &store->gen, cfg );
+				parse_generic_store( &store->gen, cfg, "IMAPStore" );
 			continue;
 			continue;
 		} else {
 		} else {
-			error( "%s:%d: unknown/misplaced keyword '%s'\n", cfg->file, cfg->line, cfg->cmd );
+			error( "%s:%d: keyword '%s' is not recognized in IMAPAccount sections\n",
+			       cfg->file, cfg->line, cfg->cmd );
 			cfg->err = 1;
 			cfg->err = 1;
 			continue;
 			continue;
 		}
 		}

+ 1 - 1
src/drv_maildir.c

@@ -1913,7 +1913,7 @@ maildir_parse_store( conffile_t *cfg, store_conf_t **storep )
 				cfg->err = 1;
 				cfg->err = 1;
 			}
 			}
 		} else
 		} else
-			parse_generic_store( &store->gen, cfg );
+			parse_generic_store( &store->gen, cfg, "MaildirStore" );
 	if (!store->inbox)
 	if (!store->inbox)
 		store->inbox = expand_strdup( "~/Maildir" );
 		store->inbox = expand_strdup( "~/Maildir" );
 	if (store->sub_style == SUB_MAILDIRPP && store->gen.path) {
 	if (store->sub_style == SUB_MAILDIRPP && store->gen.path) {