Made NtDelayExecution with a 0 timeout yield the CPU, as it is
supposed to.

diff --git a/configure b/configure
index 2bb7b49..b9ef8db 100755
--- a/configure
+++ b/configure
@@ -16146,6 +16146,7 @@
 
 
 
+
 for ac_func in \
 	_lwp_create \
 	_lwp_self \
@@ -16188,6 +16189,7 @@
 	pwrite \
 	readlink \
 	rfork \
+	sched_yield \
 	select \
 	sendmsg \
 	settimeofday \
diff --git a/configure.ac b/configure.ac
index 00a1f87..f8e951b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1099,6 +1099,7 @@
 	pwrite \
 	readlink \
 	rfork \
+	sched_yield \
 	select \
 	sendmsg \
 	settimeofday \
diff --git a/dlls/ntdll/sync.c b/dlls/ntdll/sync.c
index c19326f..19f30d8 100644
--- a/dlls/ntdll/sync.c
+++ b/dlls/ntdll/sync.c
@@ -35,6 +35,9 @@
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
 #endif
+#ifdef HAVE_SCHED_H
+# include <sched.h>
+#endif
 #include <string.h>
 #include <stdarg.h>
 #include <stdio.h>
@@ -632,6 +635,9 @@
     {
         for (;;) select( 0, NULL, NULL, NULL, NULL );
     }
+#ifdef HAVE_SCHED_YIELD
+    else if (!timeout->QuadPart) sched_yield();
+#endif
     else
     {
         abs_time_t when;
diff --git a/include/config.h.in b/include/config.h.in
index 6e42a46..8cdb8e5 100644
--- a/include/config.h.in
+++ b/include/config.h.in
@@ -500,6 +500,9 @@
 /* Define to 1 if you have the <sched.h> header file. */
 #undef HAVE_SCHED_H
 
+/* Define to 1 if you have the `sched_yield' function. */
+#undef HAVE_SCHED_YIELD
+
 /* Define to 1 if you have the <scsi/scsi.h> header file. */
 #undef HAVE_SCSI_SCSI_H