-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

I found that gigedit has a fatal assertion error when attempting to
add dimensions to a region which already has a Sample dimension. If
there is no sample loaded in an instrument, no crash. It appears the
assertion is caused by a tree being updated in the middle of the
change. The system in question is an Arch x86 machine (so, the latest
gtk3 et all is installed.)

This patch works around the crash. I've been able to put together a
few simple gig files with multiple dimension regions after writing it.

- -JC

diff --git a/src/gigedit/dimensionmanager.cpp b/src/gigedit/dimensionmanager.cpp
index 9724f91..fc73771 100644
- --- a/src/gigedit/dimensionmanager.cpp
+++ b/src/gigedit/dimensionmanager.cpp
@@ -521,6 +521,7 @@ void DimensionManager::onColumnClicked() {

 void DimensionManager::addDimension() {
     Gtk::Dialog dialog(_("New Dimension"), true /*modal*/);
+    ignoreColumnClicked = true;
     // add dimension type combo box to the dialog
     Glib::RefPtr<Gtk::ListStore> refComboModel =
Gtk::ListStore::create(comboModel);
     for (int i = 0x01; i < 0xff; i++) {
@@ -657,9 +658,11 @@ void DimensionManager::addDimension() {
             msg.run();
         }
     }
+    ignoreColumnClicked = false;
 }

 void DimensionManager::removeDimension() {
+    ignoreColumnClicked = true;
     Glib::RefPtr<Gtk::TreeSelection> sel = treeView.get_selection();
     Gtk::TreeModel::iterator it = sel->get_selected();
     if (it) {
@@ -724,4 +727,5 @@ void DimensionManager::removeDimension() {
             msg.run();
         }
     }
+    ignoreColumnClicked = false;
 }
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQEcBAEBCAAGBQJXmYsZAAoJEPq43HY1YMcl9v8H/j9s7n4logi3BAfgdRhyUpGj
qwYRmiysz12r/CWZ9MF2cxg613UesDQcMfuDZOyqUXQrmfW+zjSdLqkH+InWC7Vi
Fm2jCAb/dBol8/bUK0yu7YKAjoD2l2hYZYCCQDHSTE4tnPBXqRWB1LqEEse9z7x9
+YScOO2rtHfhrPKTucQknyjDa7isSxXDCzmstirA5jIFpHLhlXewWA+13wEWRJRU
wEho/DkDd6vaFDPdTM7yVXqYDIVS9pkrEXar4N+4/St3oa8WrYRnMzKzSFYBqEVg
5/NK53tCgvmoCChSrrgTuR37idw6Cfs/bWrHMZRGvzQJYPXXgjeJK6wnHXg+K3k=
=Tclz
-----END PGP SIGNATURE-----

------------------------------------------------------------------------------
_______________________________________________
Linuxsampler-devel mailing list
Linuxsampler-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linuxsampler-devel

Reply via email to