re PR ada/48711 (failure to bootstrap or build ada for mingw (value not in range...
authorFlorian Weimer <fw@deneb.enyo.de>
Thu, 14 Jul 2011 09:27:22 +0000 (11:27 +0200)
committerEric Botcazou <ebotcazou@gcc.gnu.org>
Thu, 14 Jul 2011 09:27:22 +0000 (09:27 +0000)
PR ada/48711
* g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.

From-SVN: r176265

gcc/ada/ChangeLog
gcc/ada/g-socthi-mingw.adb

index 66bf9746f7b0194c3b8d2104abf918b78f2d9c1f..fc1175b54d86e3ce6c34da63083902b3bdf9b485 100644 (file)
@@ -1,3 +1,8 @@
+2011-07-14  Florian Weimer  <fw@deneb.enyo.de>
+
+       PR ada/48711
+       * g-socthi-mingw.adb (Fill): Guard against invalid MSG_WAITALL.
+
 2011-07-13  Eric Botcazou  <ebotcazou@adacore.com>
 
        * gcc-interface/utils.c (build_vms_descriptor32): Skip the 32-bit
index 727a69ddba9ea1e85ff44f022bb2794deada228d..697425ef227c5fb118f57f2cf2ac43f1785782e9 100644 (file)
@@ -277,7 +277,8 @@ package body GNAT.Sockets.Thin is
       use type C.size_t;
 
       Fill  : constant Boolean :=
-                (C.unsigned (Flags) and SOSC.MSG_WAITALL) /= 0;
+       SOSC.MSG_WAITALL /= -1
+       and then (C.unsigned (Flags) and SOSC.MSG_WAITALL) /= 0;
       --  Is the MSG_WAITALL flag set? If so we need to fully fill all vectors
 
       Res   : C.int;