projects
/
model-checker.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
clockvector: bugfix - fixup vector initialization, size
[model-checker.git]
/
clockvector.cc
diff --git
a/clockvector.cc
b/clockvector.cc
index aaf492d896cab61c6b8395e375eebd6044f55ff5..367fa6e2763dd6636e78d212632f6aa954cda63c 100644
(file)
--- a/
clockvector.cc
+++ b/
clockvector.cc
@@
-1,5
+1,6
@@
#include <algorithm>
#include <cstring>
#include <algorithm>
#include <cstring>
+#include <stdlib.h>
#include "model.h"
#include "action.h"
#include "model.h"
#include "action.h"
@@
-8,14
+9,13
@@
ClockVector::ClockVector(ClockVector *parent, ModelAction *act)
{
ClockVector::ClockVector(ClockVector *parent, ModelAction *act)
{
- num_threads = parent ? parent->num_threads : 1;
- if (act && act->get_type() == THREAD_CREATE)
- num_threads++;
+ num_threads = model->get_num_threads();
clock = (int *)MYMALLOC(num_threads * sizeof(int));
clock = (int *)MYMALLOC(num_threads * sizeof(int));
+ memset(clock, 0, num_threads * sizeof(int));
if (parent)
std::memcpy(clock, parent->clock, parent->num_threads * sizeof(int));
else
if (parent)
std::memcpy(clock, parent->clock, parent->num_threads * sizeof(int));
else
- clock[0] =
0
;
+ clock[0] =
1
;
if (act)
clock[id_to_int(act->get_tid())] = act->get_seq_number();
if (act)
clock[id_to_int(act->get_tid())] = act->get_seq_number();