diff options
author | Laurent Bercot <ska-skaware@skarnet.org> | 2017-01-07 20:31:02 +0000 |
---|---|---|
committer | Laurent Bercot <ska-skaware@skarnet.org> | 2017-01-07 20:31:02 +0000 |
commit | 6a9ca73e10c3c4e8a95101313e9c5d46cf018f86 (patch) | |
tree | 41ae80cb08fa1e280012b799ad0d1e63090b19bc /src/libexecline/exlp.c | |
parent | 6245dcef12eed3b12b129519eeaf11f7e221d278 (diff) | |
download | execline-6a9ca73e10c3c4e8a95101313e9c5d46cf018f86.tar.xz |
Types fix: first pass
This pass makes variable size_t-ready, so everything works when
the prototypes are fixed in skalibs.
Some code uses "unsigned int *" where it should be "size_t *";
it cannot be changed now, but it's been marked with XXX. It must
change at the same time as the skalibs API.
Diffstat (limited to 'src/libexecline/exlp.c')
-rw-r--r-- | src/libexecline/exlp.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/libexecline/exlp.c b/src/libexecline/exlp.c index 060eb68..1ba37c0 100644 --- a/src/libexecline/exlp.c +++ b/src/libexecline/exlp.c @@ -1,5 +1,6 @@ /* ISC license. */ +#include <sys/types.h> #include <skalibs/bytestr.h> #include <skalibs/env.h> #include <skalibs/strerr2.h> @@ -11,13 +12,14 @@ int exlp (unsigned int nmin, char const *const *envp, exlsn_t *info) { - unsigned int varbase = info->vars.len ; - unsigned int valbase = info->values.len ; - unsigned int datbase = genalloc_len(elsubst_t, &info->data) ; - unsigned int i = 0 ; - char const *x = env_get2(envp, "#") ; + size_t varbase = info->vars.len ; + size_t valbase = info->values.len ; + size_t datbase = genalloc_len(elsubst_t, &info->data) ; + size_t poszero ; elsubst_t blah ; - unsigned int n, ntot, poszero ; + char const *x = env_get2(envp, "#") ; + unsigned int n, ntot, i = 0 ; + if (!x) return -2 ; if (!uint0_scan(x, &n)) return -2 ; if (el_vardupl("#", info->vars.s, info->vars.len)) return -2 ; @@ -47,7 +49,7 @@ int exlp (unsigned int nmin, char const *const *envp, exlsn_t *info) for (; i <= ntot ; i++) { char fmt[UINT_FMT] ; - unsigned int l = uint_fmt(fmt, i) ; + size_t l = uint_fmt(fmt, i) ; fmt[l] = 0 ; if (el_vardupl(fmt, info->vars.s, info->vars.len)) goto err2 ; x = (i <= n) ? env_get2(envp, fmt) : "" ; |