diff --git a/CMakeLists.txt b/CMakeLists.txt
index 1d6f9bb..94de23a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,10 +1,10 @@
cmake_minimum_required(VERSION 3.16.0)
project(pipedal
- VERSION 1.3.55
+ VERSION 1.3.56
DESCRIPTION "PiPedal Guitar Effect Pedal For Raspberry Pi"
HOMEPAGE_URL "https://rerdavies.github.io/pipedal"
)
-set (DISPLAY_VERSION "PiPedal v1.3.55-Release")
+set (DISPLAY_VERSION "PiPedal v1.3.56-Release")
set (PACKAGE_ARCHITECTURE "arm64")
set (CMAKE_INSTALL_PREFIX "/usr/")
diff --git a/README.md b/README.md
index 7375c72..125dc9d 100644
--- a/README.md
+++ b/README.md
@@ -6,13 +6,13 @@
-Download: v1.3.55
+Download: v1.3.56
Website: [https://rerdavies.github.io/pipedal](https://rerdavies.github.io/pipedal).
Documentation: [https://rerdavies.github.io/pipedal/Documentation.html](https://rerdavies.github.io/pipedal/Documentation.html).
-#### NEW version 1.3.55 Release, providing [snapshots](https://rerdavies.github.io/pipedal/Snaphots.html), and a new Performance View. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details.
+#### NEW version 1.3.56 Release, providing [snapshots](https://rerdavies.github.io/pipedal/Snaphots.html), and a new Performance View. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details.
diff --git a/docs/Installing.md b/docs/Installing.md
index f875466..8d88236 100644
--- a/docs/Installing.md
+++ b/docs/Installing.md
@@ -13,17 +13,17 @@ page_icon: img/Install4.jpg
Download the most recent Debian (.deb) package for your platform:
-- [Raspberry Pi OS bookworm (64-bit) v1.3.55](https://github.com/rerdavies/pipedal/releases/download/)
+- [Raspberry Pi OS bookworm (64-bit) v1.3.56](https://github.com/rerdavies/pipedal/releases/download/)
- [Ubuntu/Raspberry Pi OS bullseyeye (64-bit) v1.2.31](https://github.com/rerdavies/pipedal/releases/download/v1.1.31/pipedal_1.1.31_arm64.deb)
-Version 1.3.55 has not yet been tested on Ubuntu or Raspberry Pi OS bullseye. On these platforms, we recommend that you use version 1.1.31.
+Version 1.3.56 has not yet been tested on Ubuntu or Raspberry Pi OS bullseye. On these platforms, we recommend that you use version 1.1.31.
Install the package by running
```
sudo apt update
cd ~/Downloads
- sudo apt-get install pipedal_1.3.55_arm64.deb
+ sudo apt-get install pipedal_1.3.56_arm64.deb
```
Adjust accordingly if you have downloaded v1.1.31.
diff --git a/docs/ReleaseNotes.md b/docs/ReleaseNotes.md
index df6523f..9b2329f 100644
--- a/docs/ReleaseNotes.md
+++ b/docs/ReleaseNotes.md
@@ -1,10 +1,11 @@
# Release Notes
-## PiPedal 1.3.55 Release
+## PiPedal 1.3.56 Release
More snapshot problems.
Bug fixes:
+- MIDI bindings cause crash.
- Crashes related to snapshots and split controls.
- Loading/reloading/error screens go on top of Snapshot dialogs.
diff --git a/docs/download.md b/docs/download.md
index e8782e7..91efbd1 100644
--- a/docs/download.md
+++ b/docs/download.md
@@ -4,7 +4,7 @@
Download the most recent Debian (.deb) package for your platform:
-- Raspberry Pi OS Bookworm (64-bit) v1.3.55
+- Raspberry Pi OS Bookworm (64-bit) v1.3.56
Install the package by running
@@ -12,7 +12,7 @@ Install the package by running
```
sudo apt update
cd ~/Downloads
- sudo apt-get install ./pipedal_1.3.55_arm64.deb
+ sudo apt-get install ./pipedal_1.3.56_arm64.deb
```
Follow the instructions in [_Configuring PiPedal After Installation_](https://rerdavies.github.io/pipedal/Configuring.html) to complete the installation.
diff --git a/docs/index.md b/docs/index.md
index 6d15d6a..e849e82 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -1,7 +1,7 @@
-v1.3.55
+v1.3.56
@@ -9,7 +9,7 @@ To download PiPedal, click [here](download.md).
To view PiPedal documentation, click [here](Documentation.md).
-#### NEW version 1.3.55 Release. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details.
+#### NEW version 1.3.56 Release. See the [release notes](https://rerdavies.github.io/pipedal/ReleaseNotes) for details.
diff --git a/src/MidiBinding.hpp b/src/MidiBinding.hpp
index 55f38f3..6aa0256 100644
--- a/src/MidiBinding.hpp
+++ b/src/MidiBinding.hpp
@@ -73,6 +73,20 @@ public:
result.symbol_ = symbol;
return result;
}
+ bool operator==(const MidiBinding&other) const
+ {
+ return this->symbol_ == other.symbol_
+ && this->channel_ == other.channel_
+ && this->bindingType_ == other.bindingType_
+ && this->note_ == other.note_
+ && this->control_ == other.control_
+ && this->minValue_ == other.minValue_
+ && this->maxValue_ == other.maxValue_
+ && this->rotaryScale_ == other.rotaryScale_
+ && this->linearControlType_ == other.linearControlType_
+ && this->switchControlType_ == other.switchControlType_;
+
+ }
GETTER_SETTER(channel);
GETTER_SETTER_REF(symbol);
GETTER_SETTER(bindingType);
diff --git a/src/Pedalboard.cpp b/src/Pedalboard.cpp
index 77a334a..89a16ba 100644
--- a/src/Pedalboard.cpp
+++ b/src/Pedalboard.cpp
@@ -327,6 +327,10 @@ bool PedalboardItem::IsStructurallyIdentical(const PedalboardItem&other) const
{
return false;
}
+ if (this->midiBindings() != other.midiBindings())
+ {
+ return false;
+ }
if (this->isSplit()) // so is the other by virtue of idential uris.
{
// provisionally, it seems ok to change the split type.
diff --git a/src/PiPedalModel.cpp b/src/PiPedalModel.cpp
index 8860bfe..65d0adb 100644
--- a/src/PiPedalModel.cpp
+++ b/src/PiPedalModel.cpp
@@ -1485,7 +1485,7 @@ void PiPedalModel::OnNotifyMidiValueChanged(int64_t instanceId, int portIndex, f
std::vector t{subscribers.begin(), subscribers.end()};
for (auto &subscriber : t)
{
- t[i]->OnMidiValueChanged(instanceId, symbol, value);
+ subscriber->OnMidiValueChanged(instanceId, symbol, value);
}
this->SetPresetChanged(-1, true);