diff --git a/libmscore/chordlist.cpp b/libmscore/chordlist.cpp index a17bfc1105cae..92d4a7b1748bc 100644 --- a/libmscore/chordlist.cpp +++ b/libmscore/chordlist.cpp @@ -1870,7 +1870,7 @@ void ChordList::write(XmlWriter& xml) const writeRenderList(xml, &renderListRoot, "renderRoot"); } if (!renderListFunction.empty()) { - writeRenderList(xml, &renderListRoot, "renderFunction"); + writeRenderList(xml, &renderListFunction, "renderFunction"); } if (!renderListBase.empty()) { writeRenderList(xml, &renderListBase, "renderBase"); diff --git a/libmscore/harmony.cpp b/libmscore/harmony.cpp index 73dcef2ad1100..16a0017e26871 100644 --- a/libmscore/harmony.cpp +++ b/libmscore/harmony.cpp @@ -1288,6 +1288,7 @@ const RealizedHarmony& Harmony::getRealizedHarmony() const } //Adjust for Nashville Notation, might be temporary + // TODO: set dirty on add/remove of keysig if (_harmonyType == HarmonyType::NASHVILLE && !_realizedHarmony.valid()) { Key key = staff()->key(tick()); //parse root diff --git a/libmscore/realizedharmony.cpp b/libmscore/realizedharmony.cpp index 481c95cee9849..8dc660aa4fe5a 100644 --- a/libmscore/realizedharmony.cpp +++ b/libmscore/realizedharmony.cpp @@ -224,7 +224,9 @@ void RealizedHarmony::update(int rootTpc, int bassTpc, int transposeOffset /*= 0 return; } - _notes = generateNotes(rootTpc, bassTpc, _literal, _voicing, transposeOffset); + if (tpcIsValid(rootTpc)) { + _notes = generateNotes(rootTpc, bassTpc, _literal, _voicing, transposeOffset); + } _dirty = false; } diff --git a/share/styles/chords_jazz.xml b/share/styles/chords_jazz.xml index 9736530754850..1d4ee57fca82c 100644 --- a/share/styles/chords_jazz.xml +++ b/share/styles/chords_jazz.xml @@ -455,6 +455,7 @@ :n :a + :a :n / m:0:1 :n :a m:0:-1