diff options
Diffstat (limited to 'protocols/CurrencyRates')
-rw-r--r-- | protocols/CurrencyRates/src/CurrencyConverter.cpp | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/protocols/CurrencyRates/src/CurrencyConverter.cpp b/protocols/CurrencyRates/src/CurrencyConverter.cpp index a129edd784..cb9f86e8b3 100644 --- a/protocols/CurrencyRates/src/CurrencyConverter.cpp +++ b/protocols/CurrencyRates/src/CurrencyConverter.cpp @@ -181,8 +181,15 @@ INT_PTR CALLBACK CurrencyConverterDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM const auto pProvider = get_currency_converter_provider(); assert(pProvider); if (pProvider) { - double dResult = pProvider->Convert(dAmount, from, to); - CMStringW sResult(FORMAT, L"%.2lf %s = %.2lf %s", dAmount, from.GetName().c_str(), dResult, to.GetName().c_str()); + CMStringW sResult; + + try { + double dResult = pProvider->Convert(dAmount, from, to); + sResult.Format(L"%.2lf %s = %.2lf %s", dAmount, from.GetName().c_str(), dResult, to.GetName().c_str()); + } + catch (std::exception& e) { + sResult = e.what(); + } SetDlgItemText(hDlg, IDC_EDIT_RESULT, sResult); } } |