Merge branch 'master' into mixer-snapshots

This commit is contained in:
Nikolaus Gullotta 2019-03-27 09:10:28 -05:00
commit 06df01c2e6
5 changed files with 20 additions and 11 deletions

View file

@ -167,6 +167,7 @@ static const char* authors[] = {
N_("Nick Lanham"),
N_("Colin Law"),
N_("Joshua Leach"),
N_("Jan Lentfer"),
N_("Ben Loftis"),
N_("Nick Mainsbridge"),
N_("Tim Mayberry"),

View file

@ -2034,6 +2034,7 @@ RouteTimeAxisView::add_existing_processor_automation_curves (boost::weak_ptr<Pro
boost::shared_ptr<AutomationLine> al;
if ((al = find_processor_automation_curve (processor, param)) != 0) {
#warning NOT REACHED -- bug?
al->queue_reset ();
} else {
add_processor_automation_curve (processor, param);

View file

@ -42,6 +42,8 @@ namespace ARDOUR
bool
AudiofileTagger::tag_file (std::string const & filename, SessionMetadata const & metadata)
{
/* see also SessionMetadata::av_export_tag () for ffmpeg/liblame */
TagLib::FileRef file (filename.c_str());
if (file.isNull()) {
std::cerr << "TagLib::FileRef is null for file" << filename << std::endl;

View file

@ -651,6 +651,12 @@ SessionMetadata::set_country (const string & v)
void
SessionMetadata::av_export_tag (MetaDataMap& meta) const
{
/* this is used for ffmpeg/liblame -metadata key=value
* (video and mp3 export).
* for flac/ogg's vorbis-comment see:
* AudiofileTagger::tag_generic()
* AudiofileTagger::tag_vorbis_comment()
*/
if (year() > 0) {
std::ostringstream osstream; osstream << year();
meta["year"] = osstream.str();

View file

@ -249,23 +249,22 @@ SystemExec::format_key_value_parameter (std::string key, std::string value)
start_pos += 1;
}
#ifdef PLATFORM_WINDOWS
/* SystemExec::make_wargs() adds quotes around the complete argument
* windows uses CreateProcess() with a parameter string
* (and not an array list of separate arguments like Unix)
* so quotes need to be escaped.
*/
start_pos = 0;
while((start_pos = v1.find("\"", start_pos)) != std::string::npos) {
v1.replace(start_pos, 1, "\\\"");
start_pos += 2;
}
size_t len = key.length() + v1.length() + 4;
char *mds = (char*) calloc(len, sizeof(char));
#ifdef PLATFORM_WINDOWS
/* SystemExec::make_wargs() adds quotes around the complete argument
* windows uses CreateProcess() with a parameter string
* (and not an array list of separate arguments)
*/
snprintf(mds, len, "%s=%s", key.c_str(), v1.c_str());
#else
snprintf(mds, len, "%s=\"%s\"", key.c_str(), v1.c_str());
#endif
size_t len = key.length() + v1.length() + 2;
char *mds = (char*) calloc(len, sizeof(char));
snprintf(mds, len, "%s=%s", key.c_str(), v1.c_str());
return mds;
}