#include <cerrno>
#include <iostream>
#include <sys/types.h>
-#include <sys/stat.h>
#include <sys/time.h>
#include <fcntl.h>
#ifndef COMPILER_MSVC
#include <errno.h>
#include <regex.h>
+#include "pbd/gstdio_compat.h"
+
#include <glibmm/miscutils.h>
#include <glibmm/fileutils.h>
* version.
*/
-string
+string
ARDOUR::legalize_for_path_2X (const string& str)
{
string::size_type pos;
string legal_chars = "abcdefghijklmnopqrtsuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_+=: ";
Glib::ustring legal;
-
+
/* this is the one place in Ardour where we need to iterate across
* potential multibyte characters, and thus we need Glib::ustring
*/
case iXML:
return ".ixml";
case RF64:
+ case RF64_WAV:
+ case MBWF:
return ".rf64";
}
bool
ARDOUR::matching_unsuffixed_filename_exists_in (const string& dir, const string& path)
{
- string bws = basename_nosuffix (path);
+ string bws = basename_nosuffix (path);
struct dirent* dentry;
- struct stat statbuf;
+ GStatBuf statbuf;
DIR* dead;
- bool ret = false;
+ bool ret = false;
if ((dead = ::opendir (dir.c_str())) == 0) {
error << string_compose (_("cannot open directory %1 (%2)"), dir, strerror (errno)) << endl;
string fullpath = Glib::build_filename (dir, dentry->d_name);
- if (::stat (fullpath.c_str(), &statbuf)) {
+ if (g_stat (fullpath.c_str(), &statbuf)) {
continue;
}
extern "C" {
void c_stacktrace() { stacktrace (cerr); }
}
+