13
0
Go to file
Robin Gareus 3da07e6736
Special case Lua copy-construction of trackable instances
This fixes an crashing issue with ArdourUI.SelectionList a bug
introduced in 6dc3bdf252 and 35dcd46d7d.

Since removal of the special cases in 35dcd46d7d, when using
a C-pointer in a std::list<>,
  std::list<class*>::push_back(TypeListValue)
TypeListValues<>'s Head was expanded to  "class*& const"
implied by void ::push_back(const T& value);

This resulted in lifetime issues with a classes that derive
from sigc::trackable (e.g. Ardour's Selection).
The reference leaves scope and isn't duplicated when it is pushed back
to the std::list<>.

The script scripts/select_every_2nd_region.lua crashed because entries
in the SelectionList were no longer valid.

Previously (before 6dc3bdf252) TypeListValues explicitly
copy-constructed the value to work around the lifetime issue.
This new solution bypasses the issue by directly using the c-pointer
without dereferencing it.
2019-04-12 05:45:27 +02:00
doc
export FFmpeg/MP3 export supports tagging 2019-03-02 14:38:19 +01:00
gtk2_ardour Revert another sample/frame confusion 2019-04-12 02:44:23 +02:00
headless
libs Special case Lua copy-construction of trackable instances 2019-04-12 05:45:27 +02:00
mcp switch remaining use of Common/ToggleMixerList to Mixer/ToggleMixerList 2019-03-18 10:58:02 -07:00
midi_maps
msvc_extra_headers Remove support for building against LV2 older than 1.2.0 2019-04-10 10:24:33 +02:00
MSVCardour3 Add/remove source(s) in our MSVC project (gtk2_ardour) 2019-03-11 10:29:07 +00:00
MSVCMixbus3
MSVCvst_scan
nutemp
osc
osc_interfaces/touchosc
patches
patchfiles Remove duplicate patchfiles 2019-04-08 15:01:26 +02:00
plugin_metadata
scripts Update Lua Script to use new MusicSample API 2019-04-09 03:15:38 +02:00
session_utils Fix session-export util (timecode: frames, not samples) 2019-04-09 03:28:23 +02:00
templates
tools Remove support for building against LV2 older than 1.2.0 2019-04-10 10:24:33 +02:00
us2400 switch remaining use of Common/ToggleMixerList to Mixer/ToggleMixerList 2019-03-18 10:58:02 -07:00
vst
.dir-locals.el
.gitattributes
.gitignore
ardour.1
ardour.1.es
ardour.1.fr
ardour.1.ru
COPYING
instant.xml.sae
msvc32-fixup.pl
PACKAGER_README
README
README-GITHUB.txt
system_config
testfile.flac
testfile.ogg
TRANSLATORS
waf
wscript Unify build-system customization (Ardour/Mixbus) 2019-04-09 13:17:15 +02:00

Please see the Ardour web site at http://ardour.org/ for all documentation..

For information on building ardour: 
      
     http://ardour.org/development.html