A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use strtok_r() instead of non reentrant strtok().
[simgrid.git]
/
src
/
xbt
/
automaton
/
automatonparse_promela.c
diff --git
a/src/xbt/automaton/automatonparse_promela.c
b/src/xbt/automaton/automatonparse_promela.c
index
dffb34e
..
1c4b4da
100644
(file)
--- a/
src/xbt/automaton/automatonparse_promela.c
+++ b/
src/xbt/automaton/automatonparse_promela.c
@@
-17,15
+17,15
@@
static xbt_automaton_t parsed_automaton;
char* state_id_src;
static void new_state(char* id, int src){
char* state_id_src;
static void new_state(char* id, int src){
-
+ char* saveptr; // for strtok_r()
char* id_copy = xbt_strdup(id);
char* id_copy = xbt_strdup(id);
- char* first_part = strtok
(id_copy,"_"
);
+ char* first_part = strtok
_r(id_copy, "_", &saveptr
);
int type = 0 ; // -1=initial state; 0=intermediate state; 1=final state
if(strcmp(first_part,"accept")==0){
type = 1;
}else{
int type = 0 ; // -1=initial state; 0=intermediate state; 1=final state
if(strcmp(first_part,"accept")==0){
type = 1;
}else{
- char* second_part = strtok
(NULL,"_"
);
+ char* second_part = strtok
_r(NULL, "_", &saveptr
);
if(strcmp(second_part,"init")==0){
type = -1;
}
if(strcmp(second_part,"init")==0){
type = -1;
}