Diff for /rpl/src/bibliotheques_externes.c between versions 1.34 and 1.35

version 1.34, 2011/09/14 17:55:59 version 1.35, 2011/09/20 08:56:23
Line 161  chargement_bibliotheque(struct_processus Line 161  chargement_bibliotheque(struct_processus
             }              }
         }          }
   
         if (pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)) != 0)          if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_processus;              (*s_etat_processus).erreur_systeme = d_es_processus;
             return(NULL);              return(NULL);
Line 169  chargement_bibliotheque(struct_processus Line 169  chargement_bibliotheque(struct_processus
   
         (*onloading)(&rpl_arguments);          (*onloading)(&rpl_arguments);
   
         if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0)          if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0)
         {          {
             (*s_etat_processus).erreur_systeme = d_es_processus;              (*s_etat_processus).erreur_systeme = d_es_processus;
             return(NULL);              return(NULL);
Line 569  retrait_bibliotheque(struct_processus *s Line 569  retrait_bibliotheque(struct_processus *s
                 }                  }
             }              }
   
             if (pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)) != 0)              if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return(d_erreur);                  return(d_erreur);
Line 577  retrait_bibliotheque(struct_processus *s Line 577  retrait_bibliotheque(struct_processus *s
   
             (*onclosing)(&rpl_arguments);              (*onclosing)(&rpl_arguments);
   
             if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0)              if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0)
             {              {
                 (*s_etat_processus).erreur_systeme = d_es_processus;                  (*s_etat_processus).erreur_systeme = d_es_processus;
                 return(d_erreur);                  return(d_erreur);
Line 1133  execution_fonction_de_bibliotheque(struc Line 1133  execution_fonction_de_bibliotheque(struc
         }          }
     }      }
   
     if (pthread_mutex_unlock(&((*s_etat_processus).mutex_fork)) != 0)      if (sem_post(&((*s_etat_processus).semaphore_fork)) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return(d_faux);          return(d_faux);
Line 1141  execution_fonction_de_bibliotheque(struc Line 1141  execution_fonction_de_bibliotheque(struc
   
     (*fonction)(&rpl_arguments);      (*fonction)(&rpl_arguments);
   
     if (pthread_mutex_lock(&((*s_etat_processus).mutex_fork)) != 0)      if (sem_wait(&((*s_etat_processus).semaphore_fork)) != 0)
     {      {
         (*s_etat_processus).erreur_systeme = d_es_processus;          (*s_etat_processus).erreur_systeme = d_es_processus;
         return(d_faux);          return(d_faux);

Removed from v.1.34  
changed lines
  Added in v.1.35


CVSweb interface <joel.bertrand@systella.fr>