--- rpl/src/instructions_s10.c 2010/05/24 10:58:35 1.11 +++ rpl/src/instructions_s10.c 2010/05/25 18:09:44 1.12 @@ -460,13 +460,25 @@ instruction_spawn(struct_processus *s_et (*s_argument_thread).set = set; (*s_argument_thread).oldset = oldset; +# ifdef DEBUG_MEMOIRE + debug_memoire_verrouillage(); +# endif + if (pthread_create(&thread_id, &attributs, lancement_thread, s_argument_thread) != 0) { +# ifdef DEBUG_MEMOIRE + debug_memoire_deverrouillage(); +# endif + (*s_etat_processus).erreur_systeme = d_es_processus; return; } +# ifdef DEBUG_MEMOIRE + debug_memoire_deverrouillage(); +# endif + if (pthread_attr_destroy(&attributs) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus; @@ -648,13 +660,25 @@ instruction_spawn(struct_processus *s_et // Lancement du thread de surveillance +# ifdef DEBUG_MEMOIRE + debug_memoire_verrouillage(); +# endif + if (pthread_create(&thread_surveillance, &attributs, surveillance_processus, s_argument_thread) != 0) { +# ifdef DEBUG_MEMOIRE + debug_memoire_deverrouillage(); +# endif + (*s_etat_processus).erreur_systeme = d_es_processus; return; } +# ifdef DEBUG_MEMOIRE + debug_memoire_deverrouillage(); +# endif + if (pthread_attr_destroy(&attributs) != 0) { (*s_etat_processus).erreur_systeme = d_es_processus;