jwoolley 01/09/10 23:00:04
Modified: threadproc/win32 proc.c
Log:
Since the original version of these blocks just set the si.hStdFoo's
unconditionally, just testing attr->child_foo is sufficient to both
maintain the original semantics and prevent a NULL pointer deref.
Revision Changes Path
1.52 +6 -6 apr/threadproc/win32/proc.c
Index: proc.c
===================================================================
RCS file: /home/cvs/apr/threadproc/win32/proc.c,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -d -u -r1.51 -r1.52
--- proc.c 2001/09/11 01:03:07 1.51
+++ proc.c 2001/09/11 06:00:04 1.52
@@ -454,11 +454,11 @@
|| (attr->child_err && attr->child_err->filehand))
{
si.dwFlags |= STARTF_USESTDHANDLES;
- if (attr->child_in && attr->child_in->filehand)
+ if (attr->child_in)
si.hStdInput = attr->child_in->filehand;
- if (attr->child_out && attr->child_out->filehand)
+ if (attr->child_out)
si.hStdOutput = attr->child_out->filehand;
- if (attr->child_err && attr->child_err->filehand)
+ if (attr->child_err)
si.hStdError = attr->child_err->filehand;
}
@@ -484,11 +484,11 @@
|| (attr->child_err && attr->child_err->filehand))
{
si.dwFlags |= STARTF_USESTDHANDLES;
- if (attr->child_in && attr->child_in->filehand)
+ if (attr->child_in)
si.hStdInput = attr->child_in->filehand;
- if (attr->child_out && attr->child_out->filehand)
+ if (attr->child_out)
si.hStdOutput = attr->child_out->filehand;
- if (attr->child_err && attr->child_err->filehand)
+ if (attr->child_err)
si.hStdError = attr->child_err->filehand;
}