| 176 | } |
| 177 | |
| 178 | func (o *Loader) loadDir(dst map[string]string, dir string) error { |
| 179 | paths, err := o.getPaths(dir) |
| 180 | if err != nil { |
| 181 | return fmt.Errorf("LoadDir: %w", err) |
| 182 | } |
| 183 | if len(paths) == 0 { |
| 184 | return nil |
| 185 | } |
| 186 | |
| 187 | buf := make(map[string]string) |
| 188 | for _, p := range paths { |
| 189 | clear(buf) |
| 190 | |
| 191 | // Matches godotenv.Overload |
| 192 | if err := o.readFile(p, buf); err != nil { |
| 193 | return fmt.Errorf("LoadDir: %w", err) |
| 194 | } |
| 195 | o.merge(dst, buf, true) |
| 196 | } |
| 197 | return nil |
| 198 | } |
| 199 | |
| 200 | func (o *Loader) getPaths(dir string) ([]string, error) { |
| 201 | if dir == "" { |