Age | Commit message (Collapse) | Author |
|
The paths are in UTF-8 encoding and ::rename expects paths in the system
codepage encoding so ::rename will fail for any paths that contain characters
that aren't in the system codepage.
This fixes Flush Wastebasket on Windows where paths contain characters that
aren't in the system codepage(usually most non-ascii characters).
|
|
Some Mixbus users (on Windows) have reported seeing ludicrously high figures for the amount of disk space that'll be recovered if they choose to clean up unused sources. I can't see anything obviously wrong in Ardour's code - except for one situation where we don't check a return value after calling 'g_stat()'.
On Windows, the relevant path should be (hopefully!) in UTF8 format and the first thing that g_stat() does is to convert it to UTF16. If that conversion fails for some reason, g_stat() will return an error status and statbuf will be uninitialized - but at the moment, we're not checking this. As an experiment, let's check the returned value and find out if these user reports go away.
Unfortunately, if it does fix the problem then we've got an even bigger problem - because somehow, a Windows user can create source files with invalid names which can't be later deleted!!
|
|
|
|
5.3-41
|
|
|
|
|
|
changes do not move it.
The user may drag the marker, edit in the Location UI, or use nudge, to set the end
|
|
sessions with deeply nested/recursive compound regions.
This also fixes some potentially dangerous cleanup logic related to two sources with the same name (but different paths)
|
|
Adopted from Michael Beer -- GH pull-request #232 with minor changes:
* rebased on master,
* removed trailing whitespace,
* don't explicitly change saved configuration defaults (wscript)
* moved sys/wait (WNOHANG) to header include
* separate changes in GUI and lib
|
|
|
|
Fixes warning about a SessionHandleRef at session close
|
|
|
|
as ::recenable_control()
Make Mackie support code use the Stripable to access the rec-enable control while we're here
|
|
|
|
|
|
describing VCAs
|
|
remote control ID and "order keys" have been removed.
|
|
|
|
GroupControlDisposition)
This allows the signal to convey more information, which may be required by some handlers of a control's Changed signal
|
|
|
|
|
|
|
|
|
|
|
|
- also make locations and regions use a double beat rather than bbt for musical position.
|
|
|
|
..to prevent switching forth and back during individual
::state(), ::set_state() when loading/saving the session or locating.
|
|
This reverts commit 2b7a047e92bc5ebe3287860ff9c9f2fb0acb193c.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Some trickery is needed here to manage object lifetimes and
multiple inheritance.
|
|
|
|
|
|
|
|
tracks/busses.
THIS DOES NOT WORK YET. Selection information is not available in libardour at this time
|
|
use the new "well-known" route controllables
|
|
This reverts commit a9ec547457bfa65655ee946063426f1ba85b6f91.
|
|
|
|
|
|
Refactor and consolidate code and re-use it for session-templates.
This avoids recursive copying of the plugin-dir()
|
|
is used all the time (2) we avoid using multiple functions to return different subclass versions of some ports
|
|
|
|
|
|
The MidiPatchManager only requires a reference to the session to get the path
to the Session midnam directory so change it so that the path is passed to
MidiPatchManager::add_search_path on Session construction and removed on
Session Destruction. This will also make it easier to test and reduce compile
times etc.
For the common case where the Session doesn't have a Session specific midnam
patch files directory(for instance a new session) it won't cause a refresh and
reparsing of all the midnam files. This saves about 2 seconds to load a Session
on my machine(fast machine with SSD), or about half the time spent in the
Session constructor for a new session.
There is still going to be that initial cost of parsing the midnam files when
the first session is created after starting Ardour. Options to remove that
would be to parse the files asynchronously and or use a faster xml
parser(eventually), neither of which seem worth doing at this stage.
This change will cause a performance regression for the uncommon case where a
Session with Session specific midnam files is unloaded and then another Session
with Session specific midnam files is loaded as it will cause the common midnam
files in midi_patch_path to be parsed twice(unload and load).
|