diff options
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/ardour/export_filename.h | 3 | ||||
-rw-r--r-- | libs/ardour/export_filename.cc | 5 |
2 files changed, 4 insertions, 4 deletions
diff --git a/libs/ardour/ardour/export_filename.h b/libs/ardour/ardour/export_filename.h index 7eacc11b90..3761f97cb6 100644 --- a/libs/ardour/ardour/export_filename.h +++ b/libs/ardour/ardour/export_filename.h @@ -112,8 +112,7 @@ class LIBARDOUR_API ExportFilename { TimeFormat time_format; std::string get_formatted_time (std::string const & format) const; - // Due to the static allocation used in strftime(), no destructor or copy-ctor is needed for this - struct tm * time_struct; + struct tm time_struct; ExportTimespanPtr timespan; ExportChannelConfigPtr channel_config; diff --git a/libs/ardour/export_filename.cc b/libs/ardour/export_filename.cc index 19ead2d026..201abb934b 100644 --- a/libs/ardour/export_filename.cc +++ b/libs/ardour/export_filename.cc @@ -26,6 +26,7 @@ #include "pbd/xml++.h" #include "pbd/convert.h" #include "pbd/enumwriter.h" +#include "pbd/localtime_r.h" #include "ardour/libardour_visibility.h" #include "ardour/session.h" @@ -62,7 +63,7 @@ ExportFilename::ExportFilename (Session & session) : { time_t rawtime; std::time (&rawtime); - time_struct = localtime (&rawtime); + localtime_r (&rawtime, &time_struct); folder = session.session_directory().export_path(); @@ -339,7 +340,7 @@ string ExportFilename::get_formatted_time (string const & format) const { char buffer [80]; - strftime (buffer, 80, format.c_str(), time_struct); + strftime (buffer, 80, format.c_str(), &time_struct); string return_value (buffer); return return_value; |