summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour
diff options
context:
space:
mode:
authorSakari Bergen <sakari.bergen@beatwaves.net>2013-03-17 12:32:48 +0200
committerSakari Bergen <sakari.bergen@beatwaves.net>2013-03-17 12:32:48 +0200
commit8cbb9727e959a744057de387a293aecdce09a62c (patch)
treec7f6fb66b7057dff243ee68364d6778941817a53 /libs/ardour/ardour
parent2d081e43e197851636c0da3ed46a7b0be97120b0 (diff)
Handle mutiple export files with the same extension but different format.
If multiple filenames have the same extension, append the format name to the filename. This still requires a bit of extra logic to be optimal, as the format name will now be added in some situations where it is not needed. However, this is better than producing a broken file...
Diffstat (limited to 'libs/ardour/ardour')
-rw-r--r--libs/ardour/ardour/export_filename.h1
-rw-r--r--libs/ardour/ardour/export_format_specification.h2
-rw-r--r--libs/ardour/ardour/export_handler.h1
3 files changed, 3 insertions, 1 deletions
diff --git a/libs/ardour/ardour/export_filename.h b/libs/ardour/ardour/export_filename.h
index b5f0bde234..994f584e8d 100644
--- a/libs/ardour/ardour/export_filename.h
+++ b/libs/ardour/ardour/export_filename.h
@@ -92,6 +92,7 @@ class ExportFilename {
bool include_session;
bool include_revision;
bool include_channel_config;
+ bool include_format_name;
bool include_channel;
bool include_timespan;
bool include_time;
diff --git a/libs/ardour/ardour/export_format_specification.h b/libs/ardour/ardour/export_format_specification.h
index 286aa58353..fc03eb94b0 100644
--- a/libs/ardour/ardour/export_format_specification.h
+++ b/libs/ardour/ardour/export_format_specification.h
@@ -64,7 +64,7 @@ class ExportFormatSpecification : public ExportFormatBase {
ExportFormatSpecification (Session & s, XMLNode const & state);
public:
- ExportFormatSpecification (ExportFormatSpecification const & other);
+ ExportFormatSpecification (ExportFormatSpecification const & other, bool modify_name = true);
~ExportFormatSpecification ();
/* compatibility */
diff --git a/libs/ardour/ardour/export_handler.h b/libs/ardour/ardour/export_handler.h
index 235219e2f5..d4dd5627f7 100644
--- a/libs/ardour/ardour/export_handler.h
+++ b/libs/ardour/ardour/export_handler.h
@@ -106,6 +106,7 @@ class ExportHandler : public ExportElementFactory
private:
+ void handle_duplicate_format_extensions();
int process (framecnt_t frames);
Session & session;