summaryrefslogtreecommitdiffstats
path: root/parser-cfg.c
diff options
context:
space:
mode:
authoralbeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-13 14:09:49 +0000
committeralbeu <albeu@b3059339-0415-0410-9bf9-f77b7e298cf2>2003-03-13 14:09:49 +0000
commit5c2cc17c3a2eed9c880c3057bf4cbe7e06c6be01 (patch)
tree1e35162aacc16fe20860d4f020bbd53bd9f078df /parser-cfg.c
parent2884aed1ce66a29324e5b51cbded503bd832663c (diff)
downloadmpv-5c2cc17c3a2eed9c880c3057bf4cbe7e06c6be01.tar.bz2
mpv-5c2cc17c3a2eed9c880c3057bf4cbe7e06c6be01.tar.xz
Better error messages (with line number now) and make unknow option
non-fatal for ppl wich compile many different versions git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9579 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'parser-cfg.c')
-rw-r--r--parser-cfg.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/parser-cfg.c b/parser-cfg.c
index 103e404a59..b3b1f9810c 100644
--- a/parser-cfg.c
+++ b/parser-cfg.c
@@ -94,7 +94,7 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
opt[opt_pos++] = line[line_pos++];
if (opt_pos >= MAX_OPT_LEN) {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_ERR,"too long option\n");
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"too long option at line %d\n",line_num);
errors++;
ret = -1;
goto nextline;
@@ -102,7 +102,7 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
}
if (opt_pos == 0) {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_ERR,"parse error\n");
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"parse error at line %d\n",line_num);
ret = -1;
errors++;
continue;
@@ -121,7 +121,7 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
/* check '=' */
if (line[line_pos++] != '=') {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_ERR,"option without parameter\n");
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"Option %s need a parameter at line %d\n",line_num);
ret = -1;
errors++;
continue;
@@ -139,7 +139,7 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
param[param_pos++] = line[line_pos++];
if (param_pos >= MAX_PARAM_LEN) {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_ERR,"too long parameter\n");
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"Option %s have a too long parameter at line %d\n",opt,line_num);
ret = -1;
errors++;
goto nextline;
@@ -164,7 +164,7 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
/* did we read a parameter? */
if (param_pos == 0) {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_ERR,"option without parameter\n");
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"Option %s need a parameter at line %d\n",opt,line_num);
ret = -1;
errors++;
continue;
@@ -183,14 +183,18 @@ int m_config_parse_config_file(m_config_t* config, char *conffile)
/* EOL / comment */
if (line[line_pos] != '\0' && line[line_pos] != '#') {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_WARN,"extra characters on line: %s\n", line+line_pos);
+ mp_msg(MSGT_CFGPARSER,MSGL_WARN,"extra characters on line %d: %s\n",line_num, line+line_pos);
ret = -1;
}
tmp = m_config_set_option(config, opt, param);
if (tmp < 0) {
PRINT_LINENUM;
- mp_msg(MSGT_CFGPARSER,MSGL_INFO,"%s\n", opt);
+ if(tmp == M_OPT_UNKNOW) {
+ mp_msg(MSGT_CFGPARSER,MSGL_WARN,"Warning unknown option %s at line %d\n", opt,line_num);
+ continue;
+ }
+ mp_msg(MSGT_CFGPARSER,MSGL_ERR,"Error parsing option %s=%s at line %d\n",opt,param,line_num);
ret = -1;
errors++;
continue;