Merge pull request #418 from trapexit/fix

use fusepath from fileinfo. closes #417
This commit is contained in:
Antonio SJ Musumeci 2017-06-24 17:04:37 -04:00 committed by GitHub
commit fa3ff40218
6 changed files with 21 additions and 18 deletions

View File

@ -137,7 +137,7 @@ namespace fs
int
findonfs(const vector<string> &srcmounts,
const char *fusepath,
const string &fusepath,
const int fd,
string &basepath)
{

View File

@ -49,7 +49,7 @@ namespace fs
vector<string> &paths);
int findonfs(const vector<string> &srcmounts,
const char *fusepath,
const string &fusepath,
const int fd,
string &basepath);

View File

@ -41,15 +41,6 @@ namespace fs
const string &fusepath,
const size_t additional_size,
int &origfd)
{
return fs::movefile(basepaths,fusepath.c_str(),additional_size,origfd);
}
int
movefile(const vector<string> &basepaths,
const char *fusepath,
const size_t additional_size,
int &origfd)
{
int rv;
int fdin;

View File

@ -27,12 +27,6 @@ namespace fs
const std::string &fusepath,
const size_t additional_size,
int &origfd);
int
movefile(const std::vector<std::string> &basepaths,
const char *fusepath,
const size_t additional_size,
int &origfd);
}
#endif

View File

@ -38,6 +38,14 @@ namespace fs
base += suffix;
}
inline
void
append(string &base,
const string &suffix)
{
base += suffix;
}
inline
void
make(const string *base,
@ -47,6 +55,16 @@ namespace fs
output = *base;
output += suffix;
}
inline
void
make(const string *base,
const string &suffix,
string &output)
{
output = *base;
output += suffix;
}
}
};

View File

@ -87,7 +87,7 @@ namespace mergerfs
const rwlock::ReadGuard readlock(&config.srcmountslock);
extra = fuse_buf_size(src);
rv = fs::movefile(config.srcmounts,fusepath,extra,fi->fd);
rv = fs::movefile(config.srcmounts,fi->fusepath,extra,fi->fd);
if(rv == -1)
return -ENOSPC;