The TL;DR of my code is the following:
server::server(boost::filesystem::path mappath) : mappath(mappath) {
if(boost::filesystem::is_directory(mappath) && boost::filesystem::exists(mappath)) {
// Do some stuff here
} else {
boost::filesystem::create_directory(mappath);
}
}
The code works when mappath
exists (barely, as I find Boost to be segfaulting in almost every function).
However, when it doesn't, it throws an exception with the message "Bad address".
When I print mappath
via std::cout
, it returns:
"/home/myusername/.testfolder/huni/ENTER YOUR TEXT HERE"
Which is correct.
Note that, when I try printing mappath
inside the else statement, it segfaults.
I've deduced that something messes with mappath
in either is_directory
or exists
, as there were no errors when printing before the if
statement.
Aucun commentaire:
Enregistrer un commentaire