Diff for /rpl/src/instructions_s10.c between versions 1.78 and 1.79

version 1.78, 2013/05/28 22:09:55 version 1.79, 2013/05/30 09:41:41
Line 489  instruction_spawn(struct_processus *s_et Line 489  instruction_spawn(struct_processus *s_et
         return;          return;
     }      }
   
     if (pthread_mutex_lock(&((*s_etat_processus).mutex)) != 0)      if (pthread_mutex_lock(&((*s_etat_processus).mutex_pile_processus)) != 0)
     {      {
         pthread_mutex_unlock(&((*s_nouvel_etat_processus).mutex));  
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return;          return;
     }      }
Line 525  instruction_spawn(struct_processus *s_et Line 524  instruction_spawn(struct_processus *s_et
                     if (pthread_mutex_lock(&((*s_etat_processus)                      if (pthread_mutex_lock(&((*s_etat_processus)
                             .mutex_interruptions)) != 0)                              .mutex_interruptions)) != 0)
                     {                      {
                         pthread_mutex_unlock(&((*s_etat_processus).mutex));                          pthread_mutex_unlock(&((*s_etat_processus)
                                   .mutex_pile_processus));
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
                     }                      }
Line 539  instruction_spawn(struct_processus *s_et Line 539  instruction_spawn(struct_processus *s_et
                     if (pthread_mutex_unlock(&((*s_etat_processus)                      if (pthread_mutex_unlock(&((*s_etat_processus)
                             .mutex_interruptions)) != 0)                              .mutex_interruptions)) != 0)
                     {                      {
                         pthread_mutex_unlock(&((*s_etat_processus).mutex));                          pthread_mutex_unlock(&((*s_etat_processus)
                                   .mutex_pile_processus));
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
                     }                      }
Line 549  instruction_spawn(struct_processus *s_et Line 550  instruction_spawn(struct_processus *s_et
                         traitement_interruptions_logicielles(s_etat_processus);                          traitement_interruptions_logicielles(s_etat_processus);
                     }                      }
   
                     if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) != 0)                      if (pthread_mutex_unlock(&((*s_etat_processus)
                               .mutex_pile_processus)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 558  instruction_spawn(struct_processus *s_et Line 560  instruction_spawn(struct_processus *s_et
                     nanosleep(&attente, NULL);                      nanosleep(&attente, NULL);
                     INCR_GRANULARITE(attente.tv_nsec);                      INCR_GRANULARITE(attente.tv_nsec);
   
                     if (pthread_mutex_lock(&((*s_etat_processus).mutex)) != 0)                      if (pthread_mutex_lock(&((*s_etat_processus)
                               .mutex_pile_processus)) != 0)
                     {                      {
                         (*s_etat_processus).erreur_systeme = d_es_processus;                          (*s_etat_processus).erreur_systeme = d_es_processus;
                         return;                          return;
Line 578  instruction_spawn(struct_processus *s_et Line 581  instruction_spawn(struct_processus *s_et
             (struct_liste_chainee **) &((*s_etat_processus)              (struct_liste_chainee **) &((*s_etat_processus)
             .l_base_pile_processus), s_objet_systeme) == d_erreur)              .l_base_pile_processus), s_objet_systeme) == d_erreur)
     {      {
         pthread_mutex_unlock(&((*s_etat_processus).mutex));          pthread_mutex_unlock(&((*s_etat_processus).mutex_pile_processus));
         return;          return;
     }      }
   
     if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) != 0)      if (pthread_mutex_unlock(&((*s_etat_processus).mutex_pile_processus)) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return;          return;

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


CVSweb interface <joel.bertrand@systella.fr>