--- src/pcm/pcm_ladspa.c.orig 2005-11-14 09:50:29 +0000 +++ src/pcm/pcm_ladspa.c 2006-01-07 00:24:09 +0000 @@ -28,7 +28,11 @@ #include #include +#ifdef HAS_WORDEXP #include +#else +#include +#endif #include #include "pcm_local.h" #include "pcm_plugin.h" @@ -815,13 +819,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: @@ -835,6 +844,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 2005-01-19 14:56:31.000000000 +0100 +++ src/alisp/alisp.c 2005-10-10 20:50:41.000000000 +0200 @@ -30,7 +30,6 @@ #include #include #include -#include #define alisp_seq_iterator alisp_object --- src/conf.c 2005-05-24 16:14:29.000000000 +0200 +++ src/conf.c 2005-10-10 20:50:41.000000000 +0200 @@ -415,7 +415,6 @@ #include -#include #include #include #include --- src/names.c 2005-05-24 16:14:29.000000000 +0200 +++ src/names.c 2005-10-10 20:50:41.000000000 +0200 @@ -31,7 +31,6 @@ */ #include -#include #include #include #include --- src/userfile.c 2005-05-24 16:14:29.000000000 +0200 +++ src/userfile.c 2005-10-10 20:52:39.000000000 +0200 @@ -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; }