--- rpl/src/instructions_d4.c 2012/10/01 11:05:03 1.41 +++ rpl/src/instructions_d4.c 2012/12/13 16:59:41 1.42 @@ -1069,13 +1069,6 @@ instruction_decr(struct_processus *s_eta if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) { - if (pthread_mutex_lock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) - { - (*s_etat_processus).erreur_systeme = d_es_processus; - return; - } - if (recherche_variable_partagee(s_etat_processus, (*(*s_etat_processus).pointeur_variable_courante).nom, (*(*s_etat_processus).pointeur_variable_courante) @@ -1090,9 +1083,7 @@ instruction_decr(struct_processus *s_eta } s_objet_argument = (*(*s_etat_processus) - .s_liste_variables_partagees).table - [(*(*s_etat_processus).s_liste_variables_partagees) - .position_variable].objet; + .pointeur_variable_partagee_courante).objet; variable_partagee = d_vrai; } else @@ -1108,7 +1099,7 @@ instruction_decr(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1124,10 +1115,8 @@ instruction_decr(struct_processus *s_eta if (variable_partagee == d_vrai) { (*(*s_etat_processus).pointeur_variable_courante).objet = NULL; - (*(*s_etat_processus) - .s_liste_variables_partagees).table - [(*(*s_etat_processus).s_liste_variables_partagees) - .position_variable].objet = s_copie_argument; + (*(*s_etat_processus).pointeur_variable_partagee_courante).objet = + s_copie_argument; } else { @@ -1142,7 +1131,7 @@ instruction_decr(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return; @@ -1154,7 +1143,7 @@ instruction_decr(struct_processus *s_eta if (variable_partagee == d_vrai) { if (pthread_mutex_unlock(&((*(*s_etat_processus) - .s_liste_variables_partagees).mutex)) != 0) + .pointeur_variable_partagee_courante).mutex)) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; return;