version 1.59, 2013/05/21 12:10:12
|
version 1.78, 2017/06/28 09:20:36
|
Line 1
|
Line 1
|
/* |
/* |
================================================================================ |
================================================================================ |
RPL/2 (R) version 4.1.14 |
RPL/2 (R) version 4.1.27 |
Copyright (C) 1989-2013 Dr. BERTRAND Joël |
Copyright (C) 1989-2017 Dr. BERTRAND Joël |
|
|
This file is part of RPL/2. |
This file is part of RPL/2. |
|
|
Line 887 instruction_sqlquery(struct_processus *s
|
Line 887 instruction_sqlquery(struct_processus *s
|
.descripteur.mysql); |
.descripteur.mysql); |
} |
} |
|
|
if (presence_resultat == d_vrai) |
if (empilement(s_etat_processus, &((*s_etat_processus).l_base_pile), |
|
s_objet_resultat) == d_erreur) |
{ |
{ |
if (empilement(s_etat_processus, |
return; |
&((*s_etat_processus).l_base_pile), |
|
s_objet_resultat) == d_erreur) |
|
{ |
|
return; |
|
} |
|
} |
} |
|
|
# else |
# else |
Line 1224 instruction_sqlquery(struct_processus *s
|
Line 1220 instruction_sqlquery(struct_processus *s
|
attente.tv_sec = 0; |
attente.tv_sec = 0; |
attente.tv_nsec = GRANULARITE_us * 1000; |
attente.tv_nsec = GRANULARITE_us * 1000; |
|
|
|
if ((s_objet_resultat = |
|
allocation(s_etat_processus, LST)) == NULL) |
|
{ |
|
(*s_etat_processus).erreur_systeme = |
|
d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
// Création d'une liste vide |
|
|
|
(*s_objet_resultat).objet = NULL; |
|
l_element_courant = (*s_objet_resultat).objet; |
|
|
do |
do |
{ |
{ |
switch(ios = sqlite3_step(ppStmt)) |
switch(ios = sqlite3_step(ppStmt)) |
{ |
{ |
case SQLITE_ROW: |
case SQLITE_ROW: |
{ |
{ |
if (s_objet_resultat == NULL) |
|
{ |
|
if ((s_objet_resultat = |
|
allocation(s_etat_processus, LST)) == NULL) |
|
{ |
|
(*s_etat_processus).erreur_systeme = |
|
d_es_allocation_memoire; |
|
return; |
|
} |
|
|
|
presence_resultat = d_vrai; |
|
|
|
// Création d'une liste vide |
|
|
|
(*s_objet_resultat).objet = NULL; |
|
l_element_courant = (*s_objet_resultat).objet; |
|
} |
|
|
|
// Ajout d'une liste au bout de la liste |
// Ajout d'une liste au bout de la liste |
// contenant les lignes |
// contenant les lignes |
|
|
Line 1417 instruction_sqlquery(struct_processus *s
|
Line 1408 instruction_sqlquery(struct_processus *s
|
.descripteur.sqlite); |
.descripteur.sqlite); |
} |
} |
|
|
if (presence_resultat == d_vrai) |
if (empilement(s_etat_processus, &((*s_etat_processus) |
|
.l_base_pile), s_objet_resultat) == d_erreur) |
{ |
{ |
if (empilement(s_etat_processus, &((*s_etat_processus) |
return; |
.l_base_pile), s_objet_resultat) == d_erreur) |
|
{ |
|
return; |
|
} |
|
} |
} |
} |
} |
else |
else |
Line 1516 instruction_stop(struct_processus *s_eta
|
Line 1504 instruction_stop(struct_processus *s_eta
|
.processus_detache == d_vrai) |
.processus_detache == d_vrai) |
{ |
{ |
envoi_signal_processus((*(*((struct_processus_fils *) |
envoi_signal_processus((*(*((struct_processus_fils *) |
(*s_objet).objet)).thread).pid, rpl_sigstop); |
(*s_objet).objet)).thread).pid, rpl_sigstop, d_faux); |
} |
} |
else |
else |
{ |
{ |
if (pthread_mutex_lock(&((*s_etat_processus).mutex)) != 0) |
if (pthread_mutex_lock(&((*s_etat_processus).mutex_pile_processus)) |
|
!= 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_processus; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1562 instruction_stop(struct_processus *s_eta
|
Line 1551 instruction_stop(struct_processus *s_eta
|
if (pthread_mutex_lock(&((*(*((struct_processus_fils *) |
if (pthread_mutex_lock(&((*(*((struct_processus_fils *) |
(*s_objet).objet)).thread).mutex)) != 0) |
(*s_objet).objet)).thread).mutex)) != 0) |
{ |
{ |
if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) |
if (pthread_mutex_unlock(&((*s_etat_processus) |
!= 0) |
.mutex_pile_processus)) != 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_processus; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1583 instruction_stop(struct_processus *s_eta
|
Line 1572 instruction_stop(struct_processus *s_eta
|
if (pthread_mutex_unlock(&((*(*((struct_processus_fils *) |
if (pthread_mutex_unlock(&((*(*((struct_processus_fils *) |
(*s_objet).objet)).thread).mutex)) != 0) |
(*s_objet).objet)).thread).mutex)) != 0) |
{ |
{ |
if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) |
if (pthread_mutex_unlock(&((*s_etat_processus) |
!= 0) |
.mutex_pile_processus)) != 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_processus; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |
Line 1596 instruction_stop(struct_processus *s_eta
|
Line 1585 instruction_stop(struct_processus *s_eta
|
} |
} |
} |
} |
|
|
if (pthread_mutex_unlock(&((*s_etat_processus).mutex)) != 0) |
if (pthread_mutex_unlock(&((*s_etat_processus) |
|
.mutex_pile_processus)) != 0) |
{ |
{ |
(*s_etat_processus).erreur_systeme = d_es_processus; |
(*s_etat_processus).erreur_systeme = d_es_processus; |
return; |
return; |