From 4874ff8843714efd6ebdfaa92d967c51abc4f200 Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Thu, 19 Dec 2019 13:14:19 -0700 Subject: [PATCH] slightly enhanced error handling when loading MIDNAM data --- libs/midi++2/midnam_patch.cc | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/libs/midi++2/midnam_patch.cc b/libs/midi++2/midnam_patch.cc index 6c96e51ccd..a6253b8619 100644 --- a/libs/midi++2/midnam_patch.cc +++ b/libs/midi++2/midnam_patch.cc @@ -118,7 +118,7 @@ int Patch::set_state (const XMLTree& tree, const XMLNode& node) { if (node.name() != "Patch") { - cerr << "Incorrect node type '" << node.name() << "' handed to Patch" << endl; + cerr << "Incorrect node type '" << node.name() << "' handed to Patch" << " contents " << node.content() << endl; return -1; } @@ -843,13 +843,17 @@ MasterDeviceNames::set_state(const XMLTree& tree, const XMLNode&) i != patch_name_lists->end(); ++i) { + string n; (*i)->get_property ("Name", n); + PatchNameList patch_name_list; const XMLNodeList patches = (*i)->children(); for (XMLNodeList::const_iterator p = patches.begin(); p != patches.end(); ++p) { boost::shared_ptr patch (new Patch ()); - patch->set_state(tree, *(*p)); - patch_name_list.push_back(patch); + // cerr << "Let's try: "; (*(*p)).dump (cerr); cerr << endl; + if (0 == patch->set_state(tree, *(*p))) { + patch_name_list.push_back(patch); + } } if (!patch_name_list.empty()) { @@ -1097,4 +1101,3 @@ const char* general_midi_program_names[128] = { } //namespace Name } //namespace MIDI -