Added handling of std::bad_alloc so the user gets more comprehensible error message

Call to boost::nowide::nowide_filesystem() was made Windows only
This commit is contained in:
Lukas Matena 2019-08-08 15:17:17 +02:00
parent bcfb445d0c
commit 1b5d561b7c
4 changed files with 32 additions and 5 deletions

View file

@ -151,7 +151,12 @@ void BackgroundSlicingProcess::thread_proc()
} catch (CanceledException & /* ex */) {
// Canceled, this is all right.
assert(m_print->canceled());
} catch (std::exception &ex) {
} catch (const std::bad_alloc& ex) {
wxString errmsg = wxString::Format(_(L("%s has encountered an error. It was likely caused by running out of memory. "
"If you are sure you have enough RAM on your system, this may also be a bug and we would "
"be glad if you reported it.")), SLIC3R_APP_NAME);
error = errmsg.ToStdString() + "\n\n" + std::string(ex.what());
} catch (std::exception &ex) {
error = ex.what();
} catch (...) {
error = "Unknown C++ exception.";