… | |
… | |
84 | warn "tag-updated $file (= $key) <@tags>\n" |
84 | warn "tag-updated $file (= $key) <@tags>\n" |
85 | if @tags; |
85 | if @tags; |
86 | } |
86 | } |
87 | |
87 | |
88 | sub scan_static { |
88 | sub scan_static { |
89 | my ($dir, $map) = @_; |
89 | my $maps = cf::map::static_maps; |
90 | |
90 | |
91 | my ($dirs, $files) = Coro::AIO::aio_scandir $dir, 2 |
91 | scan_map "s$_", "$cf::MAPDIR$_.map"; |
92 | or return; |
|
|
93 | |
|
|
94 | for my $file (@$files) { |
|
|
95 | my $name = $file; |
|
|
96 | next unless $name =~ s/\.map$//; |
|
|
97 | utf8::decode $name; |
|
|
98 | |
|
|
99 | scan_map "s$map$name", "$dir/$file"; |
|
|
100 | } |
|
|
101 | |
|
|
102 | &scan_static ("$dir/$_", "$map$_/") |
|
|
103 | for @$dirs; |
92 | for @$maps; |
104 | } |
93 | } |
105 | |
94 | |
106 | sub reload { |
95 | sub reload { |
107 | my $guard = cf::lock_acquire "map-tags::reload"; |
96 | my $guard = cf::lock_acquire "map-tags::reload"; |
108 | |
97 | |