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
Revert "got a "might be clobbered by ‘longjmp’ or ‘vfork’" error when compiled"
[simgrid.git]
/
src
/
simix
/
smx_user.c
diff --git
a/src/simix/smx_user.c
b/src/simix/smx_user.c
index
c0957ba
..
8c08f25
100644
(file)
--- a/
src/simix/smx_user.c
+++ b/
src/simix/smx_user.c
@@
-17,6
+17,7
@@
#include "smx_private.h"
#include "mc/mc.h"
#include "smx_private.h"
#include "mc/mc.h"
+#include "xbt/ex.h"
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix);
XBT_LOG_EXTERNAL_DEFAULT_CATEGORY(simix);
@@
-1177,7
+1178,7
@@
int simcall_sem_get_capacity(smx_sem_t sem)
return simcall->sem_get_capacity.result;
}
return simcall->sem_get_capacity.result;
}
-size_t simcall_file_read(const char* storage, void* ptr, size_t size, size_t nmemb,
m
_file_t stream)
+size_t simcall_file_read(const char* storage, void* ptr, size_t size, size_t nmemb,
smx
_file_t stream)
{
smx_simcall_t simcall = SIMIX_simcall_mine();
{
smx_simcall_t simcall = SIMIX_simcall_mine();
@@
-1192,7
+1193,7
@@
size_t simcall_file_read(const char* storage, void* ptr, size_t size, size_t nme
return simcall->file_read.result;
}
return simcall->file_read.result;
}
-size_t simcall_file_write(const char* storage, const void* ptr, size_t size, size_t nmemb,
m
_file_t stream)
+size_t simcall_file_write(const char* storage, const void* ptr, size_t size, size_t nmemb,
smx
_file_t stream)
{
smx_simcall_t simcall = SIMIX_simcall_mine();
{
smx_simcall_t simcall = SIMIX_simcall_mine();
@@
-1207,7
+1208,7
@@
size_t simcall_file_write(const char* storage, const void* ptr, size_t size, siz
return simcall->file_write.result;
}
return simcall->file_write.result;
}
-
m
_file_t simcall_file_open(const char* storage, const char* path, const char* mode)
+
smx
_file_t simcall_file_open(const char* storage, const char* path, const char* mode)
{
smx_simcall_t simcall = SIMIX_simcall_mine();
{
smx_simcall_t simcall = SIMIX_simcall_mine();
@@
-1220,7
+1221,7
@@
m_file_t simcall_file_open(const char* storage, const char* path, const char* mo
return simcall->file_open.result;
}
return simcall->file_open.result;
}
-int simcall_file_close(const char* storage,
m
_file_t fp)
+int simcall_file_close(const char* storage,
smx
_file_t fp)
{
smx_simcall_t simcall = SIMIX_simcall_mine();
{
smx_simcall_t simcall = SIMIX_simcall_mine();
@@
-1232,16
+1233,17
@@
int simcall_file_close(const char* storage, m_file_t fp)
return simcall->file_close.result;
}
return simcall->file_close.result;
}
-int simcall_file_stat(const char* storage,
int fd, void*
buf)
+int simcall_file_stat(const char* storage,
smx_file_t fd, s_file_stat_t *
buf)
{
smx_simcall_t simcall = SIMIX_simcall_mine();
{
smx_simcall_t simcall = SIMIX_simcall_mine();
-
simcall->call = SIMCALL_FILE_STAT;
simcall->file_stat.storage = storage;
simcall->file_stat.fd = fd;
simcall->call = SIMCALL_FILE_STAT;
simcall->file_stat.storage = storage;
simcall->file_stat.fd = fd;
- simcall->file_stat.buf = buf;
+
SIMIX_simcall_push(simcall->issuer);
SIMIX_simcall_push(simcall->issuer);
+ *buf = simcall->file_stat.buf;
+
return simcall->file_stat.result;
}
return simcall->file_stat.result;
}