Diff for /rpl/src/interruptions.c between versions 1.79 and 1.80

version 1.79, 2011/09/20 14:36:29 version 1.80, 2011/09/20 15:45:53
Line 1125  liberation_threads(struct_processus *s_e Line 1125  liberation_threads(struct_processus *s_e
                 sem_destroy(&((*s_etat_processus).semaphore_fork));                  sem_destroy(&((*s_etat_processus).semaphore_fork));
 #           else  #           else
                 sem_post((*s_etat_processus).semaphore_fork);                  sem_post((*s_etat_processus).semaphore_fork);
                 sem_destroy2((*s_etat_processus).semaphore_fork, getpid());                  sem_close((*s_etat_processus).semaphore_fork);
 #           endif  #           endif
   
             liberation_contexte_cas(s_etat_processus);              liberation_contexte_cas(s_etat_processus);
Line 1388  verrouillage_gestionnaire_signaux(struct Line 1388  verrouillage_gestionnaire_signaux(struct
   
         if (pthread_mutex_lock(&mutex_liste_threads) != 0)          if (pthread_mutex_lock(&mutex_liste_threads) != 0)
         {          {
   #           ifndef SEMAPHORES_NOMMES
             sem_wait(&((*s_etat_processus).semaphore_fork));              sem_wait(&((*s_etat_processus).semaphore_fork));
   #           else
               sem_wait((*s_etat_processus).semaphore_fork);
   #           endif
             BUG(1, uprintf("Lock error !\n"));              BUG(1, uprintf("Lock error !\n"));
             return;              return;
         }          }
Line 2554  envoi_signal_processus(pid_t pid, enum s Line 2558  envoi_signal_processus(pid_t pid, enum s
                     }                      }
                 }                  }
 #           else  #           else
                 if ((semaphore = sem_open2(pid)) == SEM_FAILED)                  if ((semaphore = sem_open2(pid, SEM_QUEUE)) == SEM_FAILED)
                 {                  {
                     return(1);                      return(1);
                 }                  }
Line 2769  creation_queue_signaux(struct_processus Line 2773  creation_queue_signaux(struct_processus
 #       ifndef SEMAPHORES_NOMMES  #       ifndef SEMAPHORES_NOMMES
             sem_init(&((*s_queue_signaux).semaphore), 1, 1);              sem_init(&((*s_queue_signaux).semaphore), 1, 1);
 #       else  #       else
             if ((semaphore_queue_signaux = sem_init2(1, getpid()))              if ((semaphore_queue_signaux = sem_init2(1, getpid(), SEM_QUEUE))
                     == SEM_FAILED)                      == SEM_FAILED)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
Line 2981  destruction_queue_signaux(struct_process Line 2985  destruction_queue_signaux(struct_process
             sem_destroy(&((*s_queue_signaux).semaphore));              sem_destroy(&((*s_queue_signaux).semaphore));
 #       else  #       else
             sem_close(semaphore_queue_signaux);              sem_close(semaphore_queue_signaux);
             sem_destroy2(semaphore_queue_signaux, getpid());              sem_destroy2(semaphore_queue_signaux, getpid(), SEM_QUEUE);
 #       endif  #       endif
   
         if (munmap(s_queue_signaux, sizeof(struct_queue_signaux)) != 0)          if (munmap(s_queue_signaux, sizeof(struct_queue_signaux)) != 0)

Removed from v.1.79  
changed lines
  Added in v.1.80


CVSweb interface <joel.bertrand@systella.fr>