summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Jones <admin@danieljon.es>2020-06-24 13:08:04 +0930
committerDaniel Jones <admin@danieljon.es>2020-06-24 13:08:04 +0930
commitb7d79a8224a578ab5868eb2733bdf4a50db5e4f2 (patch)
tree67dbc30696a09262fad72e046d44cbe41189c787
parentf81202d509bebf98a986113c1b7a087cd32c43d8 (diff)
downloadfoxlogicgates-b7d79a8224a578ab5868eb2733bdf4a50db5e4f2.tar.gz
foxlogicgates-b7d79a8224a578ab5868eb2733bdf4a50db5e4f2.zip
fix segfault when right clicking in a blank area
-rw-r--r--MainWindow.cpp8
1 files changed, 1 insertions, 7 deletions
diff --git a/MainWindow.cpp b/MainWindow.cpp
index 3a5f359..a405990 100644
--- a/MainWindow.cpp
+++ b/MainWindow.cpp
@@ -365,13 +365,11 @@ MainWindow::update_gate_state(Gate *gate)
gate->update_state();
/* update all gates that are using this gate as an input */
Gate *gate2;
- printf("out gate size: %ld\n", gate->get_output_gates()->size());
for(auto g = gate->get_output_gates()->begin(); g != gate->get_output_gates()->end(); ++g)
{
gate2 = find_gate_by_id((*g));
if (gate2)
{
- printf("updating gate %p from gate %p\n", gate2, gate);
update_gate_state(gate2);
}
}
@@ -411,7 +409,6 @@ MainWindow::on_left_mouse_down(FXObject*, FXSelector, void *ptr)
{
dragging_link = true;
}
- //gate->update_state();
update_gate_state(gate);
}
else
@@ -464,10 +461,8 @@ MainWindow::on_left_mouse_up(FXObject*, FXSelector, void *ptr)
gate->set_input_gate1(selected_gate);
}
}
- //selected_gate->set_output_gate(gate);
selected_gate->add_output_gate_id(gate->get_id());
printf("adding output gate");
- //gate->update_state();
update_gate_state(gate);
}
dragging_link = false;
@@ -488,9 +483,8 @@ MainWindow::on_right_mouse_down(FXObject*, FXSelector, void *ptr)
/* toggle state */
gate->set_state(!gate->get_output_state());
}
- }
- //gate->update_state();
update_gate_state(gate);
+ }
draw();
return 1;