summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
016d020)
This reverts commit
f4925bd65c467da9862149984960de961af0d6cc, that
breaks a java test (java_cloud_masterworker) in a way that is
particularly hard to debug. The JVM is not exactly valgrind-friendly.
Just do some small cosmetics in this area instead.
if (waiting_synchro_ != nullptr) {
waiting_synchro_->cancel();
waiting_synchro_->set_state(activity::State::FAILED);
if (waiting_synchro_ != nullptr) {
waiting_synchro_->cancel();
waiting_synchro_->set_state(activity::State::FAILED);
- waiting_synchro_->post();
+
+ if (auto exec = boost::dynamic_pointer_cast<activity::ExecImpl>(waiting_synchro_)) {
+ exec->clean_action();
+ } else if (auto comm = boost::dynamic_pointer_cast<activity::CommImpl>(waiting_synchro_)) {
+ comm->unregister_simcall(&simcall_);
+ } else {
+ waiting_synchro_->finish();
+ }
+
activities_.remove(waiting_synchro_);
waiting_synchro_ = nullptr;
}
activities_.remove(waiting_synchro_);
waiting_synchro_ = nullptr;
}