diff options
| author | Daniel Mack <daniel@caiaq.de> | 2009-09-14 16:25:35 +0800 | 
|---|---|---|
| committer | Daniel Mack <daniel@caiaq.de> | 2009-09-14 16:25:35 +0800 | 
| commit | bebaa491650c48697b861ec5e76816e9af1a8803 (patch) | |
| tree | b57d38476473f8fc6e282f8c39f730c936fa10d4 /src/tests/get-binary-name-test.c | |
| parent | c6d330ef91ce401660f907536b1bfd0591c14c2a (diff) | |
| parent | 180ef1eebdfbdf0220af1fb5e4bf43e348207cde (diff) | |
Merge branch 'master' of git://0pointer.de/pulseaudio
Diffstat (limited to 'src/tests/get-binary-name-test.c')
| -rw-r--r-- | src/tests/get-binary-name-test.c | 25 | 
1 files changed, 23 insertions, 2 deletions
| diff --git a/src/tests/get-binary-name-test.c b/src/tests/get-binary-name-test.c index a34e38fd..e49f2eff 100644 --- a/src/tests/get-binary-name-test.c +++ b/src/tests/get-binary-name-test.c @@ -23,12 +23,33 @@  #include <limits.h>  #include <stdio.h> +#include <string.h>  #include <pulse/util.h> +#include <pulse/xmalloc.h>  int main(int argc, char *argv[]) { -    char exename[PATH_MAX]; +    char *exename; +    size_t allocated = 128; + +    for (;;) { +        exename = pa_xmalloc(allocated); + +        if (!pa_get_binary_name(exename, allocated)) { +            printf("failed to read binary name\n"); +            pa_xfree(exename); +            break; +        } + +        if (strlen(exename) < allocated - 1) { +            printf("%s\n", exename); +            pa_xfree(exename); +            break; +        } + +        pa_xfree(exename); +        allocated *= 2; +    } -    printf("%s\n", pa_get_binary_name(exename, sizeof(exename)));      return 0;  } | 
