Refactor catch(...) handlers in Http, OctoPrint, PrintHost, and Serial

This commit is contained in:
Vojtech Kral 2019-08-19 10:55:11 +02:00
parent baaf66d138
commit f937209619
4 changed files with 9 additions and 11 deletions

View file

@ -5,6 +5,7 @@
#include <thread>
#include <deque>
#include <sstream>
#include <exception>
#include <boost/filesystem/fstream.hpp>
#include <boost/format.hpp>
@ -165,7 +166,7 @@ size_t Http::priv::form_file_read_cb(char *buffer, size_t size, size_t nitems, v
try {
stream->read(buffer, size * nitems);
} catch (...) {
} catch (const std::exception &) {
return CURL_READFUNC_ABORT;
}

View file

@ -2,6 +2,7 @@
#include <algorithm>
#include <sstream>
#include <exception>
#include <boost/format.hpp>
#include <boost/log/trivial.hpp>
#include <boost/property_tree/ptree.hpp>
@ -69,7 +70,7 @@ bool OctoPrint::test(wxString &msg) const
msg = wxString::Format(_(L("Mismatched type of print host: %s")), text ? *text : "OctoPrint");
}
}
catch (...) {
catch (const std::exception &) {
res = false;
msg = "Could not parse server response";
}

View file

@ -170,8 +170,6 @@ void PrintHostJobQueue::priv::bg_thread_main()
}
} catch (const std::exception &e) {
emit_error(e.what());
} catch (...) {
emit_error("Unknown exception");
}
// Cleanup leftover files, if any

View file

@ -6,6 +6,7 @@
#include <chrono>
#include <thread>
#include <fstream>
#include <exception>
#include <stdexcept>
#include <boost/algorithm/string/predicate.hpp>
@ -71,13 +72,10 @@ void parse_hardware_id(const std::string &hardware_id, SerialPortInfo &spi)
std::regex pattern("USB\\\\.*VID_([[:xdigit:]]+)&PID_([[:xdigit:]]+).*");
std::smatch matches;
if (std::regex_match(hardware_id, matches, pattern)) {
try {
vid = std::stoul(matches[1].str(), 0, 16);
pid = std::stoul(matches[2].str(), 0, 16);
spi.id_vendor = vid;
spi.id_product = pid;
}
catch (...) {}
vid = std::stoul(matches[1].str(), 0, 16);
pid = std::stoul(matches[2].str(), 0, 16);
spi.id_vendor = vid;
spi.id_product = pid;
}
}
#endif