Diff for /rpl/src/daemon.c between versions 1.15 and 1.33

version 1.15, 2010/08/17 11:59:27 version 1.33, 2011/09/20 14:36:28
Line 1 Line 1
 /*  /*
 ================================================================================  ================================================================================
   RPL/2 (R) version 4.0.18    RPL/2 (R) version 4.1.3
   Copyright (C) 1989-2010 Dr. BERTRAND Joël    Copyright (C) 1989-2011 Dr. BERTRAND Joël
   
   This file is part of RPL/2.    This file is part of RPL/2.
   
Line 59  lancement_daemon(struct_processus *s_eta Line 59  lancement_daemon(struct_processus *s_eta
   
     fflush(NULL);      fflush(NULL);
   
 #   ifdef _BROKEN_SIGINFO  
     destruction_fifos_signaux(s_etat_processus);  
 #   endif  
   
     pid = fork();      pid = fork();
   
 #   ifdef OS2  
     if (pid == 0)  
     {  
         sem_init(&semaphore_liste_threads, 0, 1);  
         sem_init(&semaphore_gestionnaires_signaux, 0, 0);  
         sem_init(&semaphore_gestionnaires_signaux_atomique, 0, 1);  
         sem_init(&((*s_etat_processus).semaphore_fork), 0, 0);  
     }  
 #   endif  
   
     if (pid < 0)      if (pid < 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
Line 84  lancement_daemon(struct_processus *s_eta Line 70  lancement_daemon(struct_processus *s_eta
     if (pid > 0)      if (pid > 0)
     {      {
         // Fin du processus père.          // Fin du processus père.
           destruction_queue_signaux(s_etat_processus);
         _exit(EXIT_SUCCESS);          _exit(EXIT_SUCCESS);
     }      }
   
Line 112  lancement_daemon(struct_processus *s_eta Line 99  lancement_daemon(struct_processus *s_eta
     fflush(NULL);      fflush(NULL);
     pid = fork();      pid = fork();
   
 #   ifdef _BROKEN_SIGINFO  
     creation_fifos_signaux(s_etat_processus);  
 #   endif  
   
 #   ifdef OS2  
     if (pid == 0)  
     {  
         sem_init(&semaphore_liste_threads, 0, 1);  
         sem_init(&semaphore_gestionnaires_signaux, 0, 0);  
         sem_init(&semaphore_gestionnaires_signaux_atomique, 0, 1);  
         sem_init(&((*s_etat_processus).semaphore_fork), 0, 0);  
     }  
 #   endif  
   
     if (pid < 0)      if (pid < 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
Line 139  lancement_daemon(struct_processus *s_eta Line 112  lancement_daemon(struct_processus *s_eta
     }      }
   
     (*s_etat_processus).pid_processus_pere = getpid();      (*s_etat_processus).pid_processus_pere = getpid();
       creation_queue_signaux(s_etat_processus);
     modification_pid_thread_pere(s_etat_processus);      modification_pid_thread_pere(s_etat_processus);
   
     return;      return;

Removed from v.1.15  
changed lines
  Added in v.1.33


CVSweb interface <joel.bertrand@systella.fr>