--- rpl/src/fusible.c 2010/04/21 13:45:45 1.7 +++ rpl/src/fusible.c 2011/09/14 14:34:28 1.32 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.0.15 - Copyright (C) 1989-2010 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.3 + Copyright (C) 1989-2011 Dr. BERTRAND Joël This file is part of RPL/2. @@ -20,7 +20,7 @@ */ -#include "rpl.conv.h" +#include "rpl-conv.h" /* @@ -40,11 +40,11 @@ void * fusible(void *argument) { +# ifndef OS2 + real8 temps_cpu_precedent; real8 temps_cpu_courant; - sigset_t masque; - struct_processus *s_etat_processus; struct rusage s_rusage; @@ -53,15 +53,6 @@ fusible(void *argument) s_etat_processus = argument; - sigemptyset(&masque); - sigaddset(&masque, SIGINJECT); - sigaddset(&masque, SIGFSTOP); - sigaddset(&masque, SIGURG); - sigaddset(&masque, SIGALRM); - sigaddset(&masque, SIGCONT); - sigaddset(&masque, SIGINT); - pthread_sigmask(SIG_BLOCK, &masque, NULL); - if ((*s_etat_processus).debug == d_vrai) if (((*s_etat_processus).type_debug & d_debug_fusible) != 0) @@ -94,7 +85,6 @@ fusible(void *argument) { pthread_testcancel(); nanosleep(&temporisation, NULL); - getrusage(RUSAGE_SELF, &s_rusage); temps_cpu_precedent = temps_cpu_courant; @@ -108,8 +98,8 @@ fusible(void *argument) { (*s_etat_processus).temps_maximal_cpu = 0; - pthread_kill((*s_etat_processus).thread_surveille_par_fusible, - SIGFSTOP); + envoi_signal_thread((*s_etat_processus) + .thread_surveille_par_fusible, rpl_sigstop); break; } } while((*s_etat_processus).var_volatile_requete_arret == 0); @@ -131,6 +121,22 @@ fusible(void *argument) fflush(stdout); } +# else + + struct_processus *s_etat_processus; + + s_etat_processus = argument; + + if ((*s_etat_processus).langue == 'F') + { + printf("+++Attention : Support indisponible sous OS/2\n"); + } + else + { + printf("+++Warning : Function unavailable\n"); + } +# endif + pthread_exit(NULL); }