aboutsummaryrefslogtreecommitdiffstats
path: root/scripts/config/zconf.l
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/config/zconf.l')
-rw-r--r--scripts/config/zconf.l10
1 files changed, 10 insertions, 0 deletions
diff --git a/scripts/config/zconf.l b/scripts/config/zconf.l
index 3aef45983a..1dd765817a 100644
--- a/scripts/config/zconf.l
+++ b/scripts/config/zconf.l
@@ -343,6 +343,7 @@ void zconf_nextfile(const char *name)
glob_t gl;
int err;
int i;
+ char path[PATH_MAX], *p;
err = glob(name, GLOB_ERR | GLOB_MARK, NULL, &gl);
@@ -352,6 +353,15 @@ void zconf_nextfile(const char *name)
gl.gl_pathc = 0;
}
+ if (err == GLOB_NOMATCH) {
+ p = strdup(current_file->name);
+ if (p) {
+ snprintf(path, sizeof(path), "%s/%s", dirname(p), name);
+ err = glob(path, GLOB_ERR | GLOB_MARK, NULL, &gl);
+ free(p);
+ }
+ }
+
if (err) {
const char *reason = "unknown error";