13
0

Add new inodes_same() method.

git-svn-id: svn://localhost/ardour2/branches/3.0@11590 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2012-03-05 00:34:21 +00:00
parent 0e5abb0e4b
commit a7f31b56af
2 changed files with 13 additions and 0 deletions

View File

@ -63,6 +63,7 @@ std::string path_expand (std::string); /* single file path */
std::string search_path_expand (std::string); /* colon-separated search path */
std::string region_name_from_path (std::string path, bool strip_channels, bool add_channel_suffix = false, uint32_t total = 0, uint32_t this_one = 0);
bool path_is_paired (std::string path, std::string& pair_base);
bool inodes_same (const std::string &, const std::string &);
void compute_equal_power_fades (ARDOUR::framecnt_t nframes, float* in, float* out);

View File

@ -765,6 +765,18 @@ double slider_position_to_gain_with_max (double g, double max_gain)
return slider_position_to_gain (g * max_gain/2.0);
}
/** @return true if files a and b have the same inode */
bool
inodes_same (const string& a, const string& b)
{
struct stat bA;
int const rA = stat (a.c_str(), &bA);
struct stat bB;
int const rB = stat (b.c_str(), &bB);
return (rA == 0 && rB == 0 && bA.st_ino == bB.st_ino);
}
extern "C" {
void c_stacktrace() { stacktrace (cerr); }
}