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

version 1.79, 2011/11/18 21:03:24 version 1.80, 2011/11/18 21:20:02
Line 1955  instruction_detach(struct_processus *s_e Line 1955  instruction_detach(struct_processus *s_e
   
         if ((*s_etat_processus).erreur_systeme == d_es)          if ((*s_etat_processus).erreur_systeme == d_es)
         {          {
               // Évite le warning variable s_copie might be clobbered by
               // longjmp or vfork
               struct_objet **s;
   
               if ((s = malloc(sizeof(struct_objet *))) == NULL)
               {
                   (*s_etat_processus).erreur_execution = d_es_allocation_memoire;
                   return;
               }
   
               (*s) = s_copie;
   
             if (setjmp(contexte_processus) == 0)              if (setjmp(contexte_processus) == 0)
             {              {
                 if (variable_partagee == d_faux)                  if (variable_partagee == d_faux)
Line 1988  instruction_detach(struct_processus *s_e Line 2000  instruction_detach(struct_processus *s_e
                 }                  }
                 else                  else
                 {                  {
                     if (evaluation(s_etat_processus, s_copie, 'E') == d_erreur)                      if (evaluation(s_etat_processus, (*s), 'E') == d_erreur)
                     {                      {
                         if (((*s_etat_processus).erreur_execution == d_ex) &&                          if (((*s_etat_processus).erreur_execution == d_ex) &&
                                 ((*s_etat_processus).erreur_systeme == d_es))                                  ((*s_etat_processus).erreur_systeme == d_es))
Line 2015  instruction_detach(struct_processus *s_e Line 2027  instruction_detach(struct_processus *s_e
                         }                          }
                     }                      }
   
                     liberation(s_etat_processus, s_copie);                      liberation(s_etat_processus, (*s));
                 }                  }
             }              }
   
               free(s);
         }          }
   
         liberation(s_etat_processus, (*s_etat_processus).at_exit);          liberation(s_etat_processus, (*s_etat_processus).at_exit);

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


CVSweb interface <joel.bertrand@systella.fr>