diff --git a/bindings/cxx/ConfigKey_methods.cpp b/bindings/cxx/ConfigKey_methods.cpp index ee0a74eb..9c3668ff 100644 --- a/bindings/cxx/ConfigKey_methods.cpp +++ b/bindings/cxx/ConfigKey_methods.cpp @@ -90,7 +90,7 @@ Glib::VariantBase ConfigKey::parse_string(string value, enum sr_datatype dt) case SR_T_FLOAT: try { variant = g_variant_new_double(stod(value)); - } catch (invalid_argument) { + } catch (invalid_argument&) { throw Error(SR_ERR_ARG); } break; @@ -105,7 +105,7 @@ Glib::VariantBase ConfigKey::parse_string(string value, enum sr_datatype dt) case SR_T_INT32: try { variant = g_variant_new_int32(stoi(value)); - } catch (invalid_argument) { + } catch (invalid_argument&) { throw Error(SR_ERR_ARG); } break; diff --git a/bindings/cxx/classes.cpp b/bindings/cxx/classes.cpp index bf826e3c..5bc5dc2f 100644 --- a/bindings/cxx/classes.cpp +++ b/bindings/cxx/classes.cpp @@ -239,7 +239,7 @@ static int call_log_callback(void *cb_data, int loglevel, try { (*callback)(LogLevel::get(loglevel), message.get()); - } catch (Error e) { + } catch (Error &e) { return e.result; }