version 1.58, 2012/05/20 17:28:26
|
version 1.73, 2013/04/01 15:29:37
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.8 |
RPL/2 (R) version 4.1.14 |
Copyright (C) 1989-2012 Dr. BERTRAND Joël |
Copyright (C) 1989-2013 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 130 instruction_spawn(struct_processus *s_et
|
Line 130 instruction_spawn(struct_processus *s_et
|
{ |
{ |
if ((*(*s_etat_processus).pointeur_variable_courante).objet == NULL) |
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, |
if (recherche_variable_partagee(s_etat_processus, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante).nom, |
(*(*s_etat_processus).pointeur_variable_courante) |
(*(*s_etat_processus).pointeur_variable_courante) |
.variable_partagee, (*(*s_etat_processus) |
.variable_partagee, (*(*s_etat_processus) |
.pointeur_variable_courante).origine) == d_faux) |
.pointeur_variable_courante).origine) == NULL) |
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
|
.s_liste_variables_partagees).mutex)) != 0) |
|
{ |
|
(*s_etat_processus).erreur_systeme = d_es_processus; |
|
return; |
|
} |
|
|
|
liberation(s_etat_processus, s_objet); |
liberation(s_etat_processus, s_objet); |
|
|
(*s_etat_processus).erreur_systeme = d_es; |
(*s_etat_processus).erreur_systeme = d_es; |
Line 158 instruction_spawn(struct_processus *s_et
|
Line 144 instruction_spawn(struct_processus *s_et
|
return; |
return; |
} |
} |
|
|
if (((*(*(*s_etat_processus).s_liste_variables_partagees) |
if (((*(*(*s_etat_processus) |
.table[(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet).type |
.s_liste_variables_partagees).position_variable].objet) |
!= RPN) && ((*(*(*s_etat_processus) |
.type != RPN) && ((*(*(*s_etat_processus) |
.pointeur_variable_partagee_courante).objet).type |
.s_liste_variables_partagees).table |
!= ADR)) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
|
.position_variable].objet).type != ADR)) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 182 instruction_spawn(struct_processus *s_et
|
Line 166 instruction_spawn(struct_processus *s_et
|
|
|
if ((s_copie = copie_objet(s_etat_processus, |
if ((s_copie = copie_objet(s_etat_processus, |
(*(*s_etat_processus) |
(*(*s_etat_processus) |
.s_liste_variables_partagees).table |
.pointeur_variable_partagee_courante).objet, 'P')) |
[(*(*s_etat_processus).s_liste_variables_partagees) |
== NULL) |
.position_variable].objet, 'P')) == NULL) |
|
{ |
{ |
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 202 instruction_spawn(struct_processus *s_et
|
Line 185 instruction_spawn(struct_processus *s_et
|
variable_partagee = d_vrai; |
variable_partagee = d_vrai; |
|
|
if (pthread_mutex_unlock(&((*(*s_etat_processus) |
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; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 674 instruction_sqlconnect(struct_processus
|
Line 657 instruction_sqlconnect(struct_processus
|
|
|
printf(" { \"mysql\" \"server\" \"database\" " |
printf(" { \"mysql\" \"server\" \"database\" " |
"\"user\" \"password\" } SQLCONNECT\n"); |
"\"user\" \"password\" } SQLCONNECT\n"); |
|
printf(" { \"sqlite\" \"file\" } SQLCONNECT\n"); |
printf(" { \"postgresql:iso-8859-1\" \"server\" " |
printf(" { \"postgresql:iso-8859-1\" \"server\" " |
"\"database\" \"user\" \"password\" port }\n"); |
"\"database\" \"user\" \"password\" port }\n"); |
printf(" SQLCONNECT\n"); |
printf(" SQLCONNECT\n"); |
Line 906 instruction_sqldisconnect(struct_process
|
Line 890 instruction_sqldisconnect(struct_process
|
drapeau = d_faux; |
drapeau = d_faux; |
# endif |
# endif |
} |
} |
|
else if (strcmp((*((struct_connecteur_sql *) (*s_objet).objet)) |
|
.type, "SQLITE") == 0) |
|
{ |
|
if ((*((struct_connecteur_sql *) (*(*l_element_courant) |
|
.donnee).objet)).descripteur.sqlite == |
|
(*((struct_connecteur_sql *) (*s_objet).objet)) |
|
.descripteur.sqlite) |
|
{ |
|
drapeau = d_vrai; |
|
} |
|
else |
|
{ |
|
drapeau = d_faux; |
|
} |
|
} |
else |
else |
{ |
{ |
BUG(1, printf("SQL type '%s' not allowed!", |
BUG(1, printf("SQL type '%s' not allowed!", |
Line 1277 instruction_smphrtrydecr(struct_processu
|
Line 1276 instruction_smphrtrydecr(struct_processu
|
return; |
return; |
} |
} |
|
|
horodatage.tv_sec += (*((integer8 *) (*s_objet_argument_1).objet)); |
horodatage.tv_sec += (time_t) (*((integer8 *) |
|
(*s_objet_argument_1).objet)); |
} |
} |
else |
else |
{ |
{ |
Line 1291 instruction_smphrtrydecr(struct_processu
|
Line 1291 instruction_smphrtrydecr(struct_processu
|
} |
} |
|
|
partie_entiere = floor((*((real8 *) (*s_objet_argument_1).objet))); |
partie_entiere = floor((*((real8 *) (*s_objet_argument_1).objet))); |
horodatage.tv_sec += partie_entiere; |
horodatage.tv_sec += (time_t) partie_entiere; |
horodatage.tv_usec += (*((real8 *) (*s_objet_argument_1).objet)) |
horodatage.tv_usec += ((suseconds_t) ((*((real8 *) |
- partie_entiere; |
(*s_objet_argument_1).objet)) - partie_entiere)) * 1000000; |
|
|
if (horodatage.tv_usec > 1000000) |
if (horodatage.tv_usec > 1000000) |
{ |
{ |
Line 1648 instruction_svd(struct_processus *s_etat
|
Line 1648 instruction_svd(struct_processus *s_etat
|
|
|
struct_vecteur s_vecteur; |
struct_vecteur s_vecteur; |
|
|
unsigned long i; |
integer8 i; |
unsigned long j; |
integer8 j; |
|
|
(*s_etat_processus).erreur_execution = d_ex; |
(*s_etat_processus).erreur_execution = d_ex; |
|
|
Line 1741 instruction_svd(struct_processus *s_etat
|
Line 1741 instruction_svd(struct_processus *s_etat
|
.nombre_lignes; |
.nombre_lignes; |
|
|
if (((*((struct_matrice *) (*s_objet_resultat_2).objet)).tableau = |
if (((*((struct_matrice *) (*s_objet_resultat_2).objet)).tableau = |
malloc((*((struct_matrice *) (*s_objet_resultat_2).objet)) |
malloc(((size_t) (*((struct_matrice *) (*s_objet_resultat_2) |
.nombre_lignes * sizeof(real8 *))) == NULL) |
.objet)).nombre_lignes) * sizeof(real8 *))) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
Line 1752 instruction_svd(struct_processus *s_etat
|
Line 1752 instruction_svd(struct_processus *s_etat
|
.nombre_lignes; i++) |
.nombre_lignes; i++) |
{ |
{ |
if ((((real8 **) (*((struct_matrice *) (*s_objet_resultat_2) |
if ((((real8 **) (*((struct_matrice *) (*s_objet_resultat_2) |
.objet)).tableau)[i] = malloc((*((struct_matrice *) |
.objet)).tableau)[i] = malloc(((size_t) |
(*s_objet_resultat_2).objet)).nombre_colonnes * |
(*((struct_matrice *) (*s_objet_resultat_2).objet)) |
sizeof(real8 *))) == NULL) |
.nombre_colonnes) * sizeof(real8 *))) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
Line 1841 instruction_svd(struct_processus *s_etat
|
Line 1841 instruction_svd(struct_processus *s_etat
|
.nombre_lignes; |
.nombre_lignes; |
|
|
if (((*((struct_matrice *) (*s_objet_resultat_2).objet)).tableau = |
if (((*((struct_matrice *) (*s_objet_resultat_2).objet)).tableau = |
malloc((*((struct_matrice *) (*s_objet_resultat_2).objet)) |
malloc(((size_t) (*((struct_matrice *) (*s_objet_resultat_2) |
.nombre_lignes * sizeof(real8 *))) == NULL) |
.objet)).nombre_lignes) * sizeof(real8 *))) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |
Line 1852 instruction_svd(struct_processus *s_etat
|
Line 1852 instruction_svd(struct_processus *s_etat
|
.nombre_lignes; i++) |
.nombre_lignes; i++) |
{ |
{ |
if ((((real8 **) (*((struct_matrice *) (*s_objet_resultat_2) |
if ((((real8 **) (*((struct_matrice *) (*s_objet_resultat_2) |
.objet)).tableau)[i] = malloc((*((struct_matrice *) |
.objet)).tableau)[i] = malloc(((size_t) |
(*s_objet_resultat_2).objet)).nombre_colonnes * |
(*((struct_matrice *) (*s_objet_resultat_2).objet)) |
sizeof(real8 *))) == NULL) |
.nombre_colonnes) * sizeof(real8 *))) == NULL) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
(*s_etat_processus).erreur_systeme = d_es_allocation_memoire; |
return; |
return; |