renderer: fixed bug that would render frames even after hash matching

Also enables the -Wshadow GCC warning to warn against the code bug that
caused this issue (and has caused other issues like it in the past).
This commit is contained in:
itsmattkc
2020-06-19 20:25:05 +10:00
parent b2a3cede2c
commit 65ccac1dfe
11 changed files with 48 additions and 44 deletions
+8 -6
View File
@@ -81,13 +81,15 @@ QString NodeInput::name()
void NodeInput::Load(QXmlStreamReader *reader, XMLNodeData &xml_node_data, const QAtomicInt *cancelled)
{
XMLAttributeLoop(reader, attr) {
if (cancelled && *cancelled) {
return;
}
{
XMLAttributeLoop(reader, attr) {
if (cancelled && *cancelled) {
return;
}
if (attr.name() == QStringLiteral("keyframing")) {
set_is_keyframing(attr.value() == QStringLiteral("1"));
if (attr.name() == QStringLiteral("keyframing")) {
set_is_keyframing(attr.value() == QStringLiteral("1"));
}
}
}
+3 -3
View File
@@ -151,9 +151,9 @@ void TrackList::RemoveTrack()
void TrackList::TrackConnected(NodeEdgePtr edge)
{
int track_index = track_input_->IndexOfSubParameter(edge->input());
int input_index = track_input_->IndexOfSubParameter(edge->input());
Q_ASSERT(track_index >= 0);
Q_ASSERT(input_index >= 0);
Node* connected_node = edge->output()->parentNode();
@@ -163,7 +163,7 @@ void TrackList::TrackConnected(NodeEdgePtr edge)
{
// Find "real" index
TrackOutput* next = nullptr;
for (int i=track_index+1; i<track_input_->GetSize(); i++) {
for (int i=input_index+1; i<track_input_->GetSize(); i++) {
Node* that_track = track_input_->At(i)->get_connected_node();
if (that_track && that_track->IsTrack()) {