Mercurial > dovecot > core-2.2
diff src/config/settings-get.pl @ 10177:d589d568a19d HEAD
Changed all settings related structs to const and changed APIs to make it work.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Fri, 23 Oct 2009 20:10:17 -0400 |
parents | dcda7c495eb6 |
children | afe52d60989c |
line wrap: on
line diff
--- a/src/config/settings-get.pl Fri Oct 23 19:11:19 2009 -0400 +++ b/src/config/settings-get.pl Fri Oct 23 20:10:17 2009 -0400 @@ -31,11 +31,11 @@ /struct setting_define.*{/ || /struct .*_default_settings = {/) { $state++; - } elsif (/^(static )?struct setting_parser_info (.*) = {/) { - $state++; + } elsif (/^(static )?const struct setting_parser_info (.*) = {/) { $cur_name = $2; - } elsif (/^extern struct setting_parser_info (.*);/) { - $externs .= "extern struct setting_parser_info $1;\n"; + $state++ if ($cur_name !~ /^\*default_/); + } elsif (/^extern const struct setting_parser_info (.*);/) { + $externs .= "extern const struct setting_parser_info $1;\n"; } elsif (/\/\* <settings checks> \*\//) { $state = 4; $code .= $_; @@ -62,7 +62,7 @@ my $value = $1; if ($value =~ /.*&(.*)\)/) { $parsers{$1} = 0; - $externs .= "extern struct setting_parser_info $1;\n"; + $externs .= "extern const struct setting_parser_info $1;\n"; } else { $state = 3; }