--- rpl/src/instructions_p8.c 2012/10/01 11:05:06 1.12 +++ rpl/src/instructions_p8.c 2015/01/27 14:18:07 1.28 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.11 - Copyright (C) 1989-2012 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.20 + Copyright (C) 1989-2015 Dr. BERTRAND Joël This file is part of RPL/2. @@ -42,7 +42,8 @@ instruction_poll(struct_processus *s_eta int i; int ios; int nombre_descripteurs; - int timeout; + + integer8 timeout; logical1 drapeau; @@ -104,7 +105,7 @@ instruction_poll(struct_processus *s_eta if (test_cfsf(s_etat_processus, 31) == d_vrai) { - if (empilement_pile_last(s_etat_processus, 3) == d_erreur) + if (empilement_pile_last(s_etat_processus, 2) == d_erreur) { return; } @@ -138,14 +139,14 @@ instruction_poll(struct_processus *s_eta l_element_courant = (*l_element_courant).suivant; } - if ((s_poll = malloc(nombre_descripteurs * sizeof(struct pollfd))) - == NULL) + if ((s_poll = malloc(((size_t) nombre_descripteurs) * + sizeof(struct pollfd))) == NULL) { (*s_etat_processus).erreur_systeme = d_es_allocation_memoire; return; } - if ((s_objet_tmp = malloc(nombre_descripteurs * + if ((s_objet_tmp = malloc(((size_t) nombre_descripteurs) * sizeof(struct_objet *))) == NULL) { (*s_etat_processus).erreur_systeme = d_es_allocation_memoire; @@ -223,9 +224,9 @@ instruction_poll(struct_processus *s_eta case CHN: { - if ((registre = conversion_majuscule((unsigned char *) - (*(*l_element_courant_2).donnee).objet)) - == NULL) + if ((registre = conversion_majuscule(s_etat_processus, + (unsigned char *) (*(*l_element_courant_2) + .donnee).objet)) == NULL) { (*s_etat_processus).erreur_systeme = d_es_allocation_memoire; @@ -317,7 +318,8 @@ instruction_poll(struct_processus *s_eta return; } - if ((ios = poll(s_poll, nombre_descripteurs, timeout)) < 0) + if ((ios = poll(s_poll, (nfds_t) nombre_descripteurs, + (int) timeout)) < 0) { erreur = errno;