summaryrefslogtreecommitdiffstats
path: root/common/iobuf.c
diff options
context:
space:
mode:
Diffstat (limited to 'common/iobuf.c')
-rw-r--r--common/iobuf.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/common/iobuf.c b/common/iobuf.c
index 7360febdb..20649bda1 100644
--- a/common/iobuf.c
+++ b/common/iobuf.c
@@ -2366,7 +2366,12 @@ iobuf_read_line (iobuf_t a, byte ** addr_of_buffer,
static int
translate_file_handle (int fd, int for_write)
{
-#if defined(HAVE_W32_SYSTEM) && !defined (HAVE_W32CE_SYSTEM)
+#if defined (HAVE_W32CE_SYSTEM)
+ /* This is called only with one of the special filenames. Under
+ W32CE the FD here is not a file descriptor but a rendezvous id,
+ thus we need to finish the pipe first. */
+ fd = _assuan_w32ce_finish_pipe fd, for_write);
+#elif defined(HAVE_W32_SYSTEM)
{
int x;