Diff for /rpl/src/instructions_d5.c between versions 1.139 and 1.140

version 1.139, 2016/03/09 10:57:41 version 1.140, 2016/03/09 17:49:11
Line 1094  instruction_detach(struct_processus *s_e Line 1094  instruction_detach(struct_processus *s_e
         return;          return;
     }      }
   
       verrouillage_threads_concurrents(s_etat_processus);
   
     if (pthread_mutex_lock(&((*s_etat_processus).mutex_allocation_buffer)) != 0)      if (pthread_mutex_lock(&((*s_etat_processus).mutex_allocation_buffer)) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
Line 1107  instruction_detach(struct_processus *s_e Line 1109  instruction_detach(struct_processus *s_e
      * de mémoire, ni libération, ni copie d'objet concurrent au fork().       * de mémoire, ni libération, ni copie d'objet concurrent au fork().
      */       */
   
     verrouillage_threads_concurrents(s_etat_processus);  
     (*s_argument_thread).pid = fork();      (*s_argument_thread).pid = fork();
   
     if ((*s_argument_thread).pid > 0)  
     {  
         deverrouillage_threads_concurrents(s_etat_processus);  
     }  
   
     if (pthread_mutex_unlock(&((*s_etat_processus).mutex_allocation_buffer))      if (pthread_mutex_unlock(&((*s_etat_processus).mutex_allocation_buffer))
             != 0)              != 0)
     {      {
Line 1122  instruction_detach(struct_processus *s_e Line 1118  instruction_detach(struct_processus *s_e
         return;          return;
     }      }
   
       if ((*s_argument_thread).pid > 0)
       {
           // On ne déverrouille les threads concurrents que dans le processus
           // père. Dans le fils, les valeurs sont non initialisées.
           deverrouillage_threads_concurrents(s_etat_processus);
       }
   
     (*s_argument_thread).thread_pere = pthread_self();      (*s_argument_thread).thread_pere = pthread_self();
     (*s_argument_thread).processus_detache = d_vrai;      (*s_argument_thread).processus_detache = d_vrai;
   

Removed from v.1.139  
changed lines
  Added in v.1.140


CVSweb interface <joel.bertrand@systella.fr>