diff --git a/gpgme/ChangeLog b/gpgme/ChangeLog index abca388b..105a713f 100644 --- a/gpgme/ChangeLog +++ b/gpgme/ChangeLog @@ -1,3 +1,9 @@ +2002-09-02 Marcus Brinkmann + + * posix-io.c (_gpgme_io_select): Don't use a non-constant struct initializer. + * version.c (_gpgme_get_program_version): Likewise. + Reported by Dr. Stefan Dalibor . + 2002-09-02 Marcus Brinkmann * conversion.c (_gpgme_decode_c_string): Set DESTP before modifying DEST. diff --git a/gpgme/posix-io.c b/gpgme/posix-io.c index d0fd5f8e..da7c106d 100644 --- a/gpgme/posix-io.c +++ b/gpgme/posix-io.c @@ -306,12 +306,14 @@ _gpgme_io_select (struct io_select_fd_s *fds, size_t nfds, int nonblock) fd_set readfds; fd_set writefds; int any, i, max_fd, n, count; - struct timeval timeout = { nonblock ? 0 : 1, 0 }; /* Use a 1s timeout. */ + struct timeval timeout = { 1, 0 }; /* Use a 1s timeout. */ void *dbg_help = NULL; FD_ZERO (&readfds); FD_ZERO (&writefds); max_fd = 0; + if (nonblock) + timeout.tv_sec = 0; DEBUG_BEGIN (dbg_help, 3, "gpgme:select on [ "); any = 0; diff --git a/gpgme/version.c b/gpgme/version.c index 836a5978..6fb05124 100644 --- a/gpgme/version.c +++ b/gpgme/version.c @@ -220,13 +220,14 @@ _gpgme_get_program_version (const char *const path) char *mark = NULL; int rp[2]; int nread; - char *argv[] = {(char *) path, "--version", 0}; + char *argv[] = {NULL /* path */, "--version", 0}; struct spawn_fd_item_s pfd[] = { {0, -1}, {-1, -1} }; struct spawn_fd_item_s cfd[] = { {-1, 1 /* STDOUT_FILENO */}, {-1, -1} }; int status; if (!path) return NULL; + argv[0] = (char *) path; if (_gpgme_io_pipe (rp, 1) < 0) return NULL;