* rungpg.c (_gpgme_gpg_spawn): Do not set parent fds to -1.
* posix-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead close
for parent fds.
* w32-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead
CloseHandle for parent fds.
+2002-11-25 Marcus Brinkmann <marcus@g10code.de>
+
+ * rungpg.c (_gpgme_gpg_spawn): Do not set parent fds to -1.
+ * posix-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead close
+ for parent fds.
+ * w32-io.c (_gpgme_io_spawn): Call _gpgme_io_close instead
+ CloseHandle for parent fds.
+
2002-11-22 Marcus Brinkmann <marcus@g10code.de>
* gpgme.h [_MSC_VER]: Define ssize_t as long.
/* .dup_to is not used in the parent list. */
for (i = 0; fd_parent_list[i].fd != -1; i++)
- close (fd_parent_list[i].fd);
+ _gpgme_io_close (fd_parent_list[i].fd);
return 0;
}
fd_parent_list[n].fd = gpg->status.fd[1];
fd_parent_list[n].dup_to = -1;
n++;
- gpg->status.fd[1] = -1;
}
if (gpg->colon.fd[1] != -1)
{
fd_parent_list[n].fd = gpg->colon.fd[1];
fd_parent_list[n].dup_to = -1;
n++;
- gpg->colon.fd[1] = -1;
}
for (i = 0; gpg->fd_data_map[i].data; i++)
{
fd_parent_list[n].fd = gpg->fd_data_map[i].peer_fd;
fd_parent_list[n].dup_to = -1;
n++;
- gpg->fd_data_map[i].peer_fd = -1;
}
fd_parent_list[n].fd = -1;
fd_parent_list[n].dup_to = -1;
}
/* Close the other ends of the pipes */
- for (i=0; fd_parent_list[i].fd != -1; i++ ) {
- DEBUG1 ("Closing fd %d\n", fd_parent_list[i].fd );
- if ( !CloseHandle ( fd_to_handle (fd_parent_list[i].fd) ) )
- DEBUG1 ("CloseHandle failed: ec=%d", (int)GetLastError());
- }
+ for (i = 0; fd_parent_list[i].fd != -1; i++)
+ _gpgme_io_close (fd_parent_list[i].fd);
DEBUG4 ("CreateProcess ready\n"
"- hProcess=%p hThread=%p\n"