--- rpl/src/bibliotheques_externes.c 2015/11/26 11:44:29 1.66 +++ rpl/src/bibliotheques_externes.c 2017/07/12 15:43:06 1.73 @@ -1,7 +1,7 @@ /* ================================================================================ - RPL/2 (R) version 4.1.24 - Copyright (C) 1989-2015 Dr. BERTRAND Joël + RPL/2 (R) version 4.1.27 + Copyright (C) 1989-2017 Dr. BERTRAND Joël This file is part of RPL/2. @@ -57,7 +57,7 @@ chargement_bibliotheque(struct_processus unsigned char *tampon; void *descripteur_bibliotheque; - int (*onloading)(struct_rpl_arguments *); + int (*onloading)(struct_rpl_arguments *, void *); /* * On vérifie que la bibliothèque n'est pas déjà chargée. @@ -172,7 +172,7 @@ chargement_bibliotheque(struct_processus return(NULL); } - (*onloading)(&rpl_arguments); + (*onloading)(&rpl_arguments, descripteur_bibliotheque); # ifndef SEMAPHORES_NOMMES while(sem_wait(&((*s_etat_processus).semaphore_fork)) != 0) @@ -305,7 +305,7 @@ chargement_bibliotheque(struct_processus } dlerror(); - fonction = dlsym(descripteur_bibliotheque, "__external_symbols"); + fonction = dlsym(descripteur_bibliotheque, "___external_symbols"); if (fonction == NULL) { @@ -490,7 +490,7 @@ retrait_bibliotheque(struct_processus *s integer8 j; integer8 nombre_symboles_residuels; - int (*onclosing)(struct_rpl_arguments *); + int (*onclosing)(struct_rpl_arguments *, void *); l_element_courant = (*s_etat_processus).s_bibliotheques; presence_bibliotheque = d_faux; @@ -591,7 +591,7 @@ retrait_bibliotheque(struct_processus *s return(d_erreur); } - (*onclosing)(&rpl_arguments); + (*onclosing)(&rpl_arguments, (*descripteur).descripteur); # ifndef SEMAPHORES_NOMMES while(sem_wait(&((*s_etat_processus).semaphore_fork)) != 0)