summaryrefslogtreecommitdiff
path: root/hw/xfree86/loader/loadmod.c
diff options
context:
space:
mode:
Diffstat (limited to 'hw/xfree86/loader/loadmod.c')
-rw-r--r--hw/xfree86/loader/loadmod.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/hw/xfree86/loader/loadmod.c b/hw/xfree86/loader/loadmod.c
index a21f43d63..c697d74ed 100644
--- a/hw/xfree86/loader/loadmod.c
+++ b/hw/xfree86/loader/loadmod.c
@@ -437,14 +437,11 @@ FindModule(const char *module, const char *dirname, const char **subdirlist,
PatternPtr patterns)
{
char buf[PATH_MAX + 1];
- char *dirpath = NULL;
char *name = NULL;
- int dirlen;
const char **subdirs = NULL;
const char **s;
- dirpath = (char *)dirname;
- if (strlen(dirpath) > PATH_MAX)
+ if (strlen(dirname) > PATH_MAX)
return NULL;
subdirs = InitSubdirs(subdirlist);
@@ -452,17 +449,15 @@ FindModule(const char *module, const char *dirname, const char **subdirlist,
return NULL;
for (s = subdirs; *s; s++) {
- if ((dirlen = strlen(dirpath) + strlen(*s)) > PATH_MAX)
+ if ((strlen(dirname) + strlen(*s)) > PATH_MAX)
continue;
- strcpy(buf, dirpath);
+ strcpy(buf, dirname);
strcat(buf, *s);
if ((name = FindModuleInSubdir(buf, module)))
break;
}
FreeSubdirs(subdirs);
- if (dirpath != dirname)
- free(dirpath);
return name;
}