--- src/pcm/pcm_ladspa.c.orig 2005-09-10 17:52:33 +0000 +++ src/pcm/pcm_ladspa.c 2005-09-10 17:59:41 +0000 @@ -28,7 +28,11 @@ #include #include +#ifdef HAS_WORDEXP #include +#else +#include +#endif #include "pcm_local.h" #include "pcm_plugin.h" @@ -794,13 +798,18 @@ { const char *c; size_t l; +#ifdef HAS_WORDEXP wordexp_t we; +#else + glob_t globbuf; +#endif int err; for (c = path; (l = strcspn(c, ": ")) > 0; ) { char name[l + 1]; memcpy(name, c, l); name[l] = 0; +#ifdef HAS_WORDEXP err = wordexp(name, &we, WRDE_NOCMD); switch (err) { case WRDE_NOSPACE: @@ -814,6 +823,22 @@ } err = snd_pcm_ladspa_check_dir(plugin, we.we_wordv[0], label, ladspa_id); wordfree(&we); +#else + err = glob(name, 0, NULL, &globbuf); + switch(err) { + case GLOB_NOSPACE: + return -ENOMEM; + case 0: + if (globbuf.gl_pathc == 1) + break; + /* Fall Through */ + default: + return -EINVAL; + } + err = snd_pcm_ladspa_check_dir(plugin, globbuf.gl_pathv[0], label, ladspa_id); + globfree(&globbuf); +#endif + if (err < 0) return err; if (err > 0) --- src/alisp/alisp.c.orig 2005-09-10 18:06:34 +0000 +++ src/alisp/alisp.c 2005-09-10 18:07:04 +0000 @@ -30,7 +30,6 @@ #include #include #include -#include #define alisp_seq_iterator alisp_object --- src/conf.c.orig 2005-09-10 18:09:03 +0000 +++ src/conf.c 2005-09-10 18:09:16 +0000 @@ -415,7 +415,6 @@ #include -#include #include #include #include --- src/userfile.c.orig 2005-09-10 18:13:06 +0000 +++ src/userfile.c 2005-09-10 18:13:22 +0000 @@ -20,7 +20,11 @@ #include #include +#ifdef HAS_WORDEXP #include +#else +#include +#endif #include /** @@ -34,10 +38,15 @@ */ int snd_user_file(const char *file, char **result) { +#ifdef HAS_WORDEXP wordexp_t we; +#else + glob_t globbuf; +#endif int err; assert(file && result); +#ifdef HAS_WORDEXP err = wordexp(file, &we, WRDE_NOCMD); switch (err) { case WRDE_NOSPACE: @@ -54,5 +63,22 @@ if (*result == NULL) return -ENOMEM; wordfree(&we); +#else + err = glob(file, 0, NULL, &globbuf); + switch (err){ + case GLOB_NOSPACE: + err = -ENOMEM; + case 0: + if (globbuf.gl_pathc == 1) + break; + /* fall thru*/ + default: + return -EINVAL; + } + *result = strdup(globbuf.gl_pathv[0]); + if (*result == NULL) + return -ENOMEM; + globfree(&globbuf); +#endif return 0; } --- src/names.c.orig 2005-09-10 18:15:04 +0000 +++ src/names.c 2005-09-10 18:15:19 +0000 @@ -31,7 +31,6 @@ */ #include -#include #include #include #include