using std::string;
/** @param f File that we were trying to open */
-OpenFileError::OpenFileError (string f)
- : FileError (String::compose (_("could not open file %1"), f), f)
+OpenFileError::OpenFileError (boost::filesystem::path f)
+ : FileError (String::compose (_("could not open file %1"), f.string()), f)
{
}
/** @param f File that we were trying to create */
-CreateFileError::CreateFileError (string f)
- : FileError (String::compose (_("could not create file %1"), f), f)
+CreateFileError::CreateFileError (boost::filesystem::path f)
+ : FileError (String::compose (_("could not create file %1"), f.string()), f)
{
}
-ReadFileError::ReadFileError (string f, int e)
- : FileError ("", f)
+ReadFileError::ReadFileError (boost::filesystem::path f, int e)
+ : FileError (String::compose (_("could not read from file %1 (%2)"), f.string(), strerror (e)), f)
{
- _what = String::compose (_("could not read from file %1 (%2)"), f, strerror (e));
+
}
-WriteFileError::WriteFileError (std::string f, int e)
- : FileError ("", f)
+WriteFileError::WriteFileError (boost::filesystem::path f, int e)
+ : FileError (String::compose (_("could not write to file %1 (%2)"), f.string(), strerror (e)), f)
{
- _what = String::compose (_("could not write to file %1 (%2)"), f, strerror (e));
+
}
MissingSettingError::MissingSettingError (string s)
#include <stdexcept>
#include <cstring>
#include <boost/exception/all.hpp>
+#include <boost/filesystem.hpp>
#include <boost/thread.hpp>
extern "C" {
#include <libavutil/pixfmt.h>
/** @param m Error message.
* @param f Name of the file that this exception concerns.
*/
- FileError (std::string m, std::string f)
+ FileError (std::string m, boost::filesystem::path f)
: StringError (m)
, _file (f)
{}
virtual ~FileError () throw () {}
/** @return name of the file that this exception concerns */
- std::string file () const {
+ boost::filesystem::path file () const {
return _file;
}
private:
/** name of the file that this exception concerns */
- std::string _file;
+ boost::filesystem::path _file;
};
{
public:
/** @param f File that we were trying to open */
- /* XXX: should be boost::filesystem::path */
- OpenFileError (std::string f);
+ OpenFileError (boost::filesystem::path f);
};
/** @class CreateFileError.
{
public:
/** @param f File that we were trying to create */
- CreateFileError (std::string f);
+ CreateFileError (boost::filesystem::path f);
};
/** @param f File that we were trying to read from.
* @param e errno value, or 0.
*/
- ReadFileError (std::string f, int e = 0);
+ ReadFileError (boost::filesystem::path f, int e = 0);
};
/** @class WriteFileError.
/** @param f File that we were trying to write to.
* @param e errno value, or 0.
*/
- WriteFileError (std::string f, int e);
+ WriteFileError (boost::filesystem::path f, int e);
};
/** @class SettingError.