diff --git a/R-package/src/xgboost_R.cc b/R-package/src/xgboost_R.cc index 79b9e6037..fb05c33b4 100644 --- a/R-package/src/xgboost_R.cc +++ b/R-package/src/xgboost_R.cc @@ -161,15 +161,13 @@ object, need to be destructed before triggering the R error. In order to preserve the error message, it gets copied to a temporary buffer, and the R error section is reached through a 'goto' statement that bypasses usual function control flow. */ -char cpp_ex_msg[256]; +char cpp_ex_msg[512]; /*! * \brief macro to annotate end of api */ #define R_API_END() \ - } catch(dmlc::Error& e) { \ - Rf_error("%s", e.what()); \ } catch(std::exception &e) { \ - std::strncpy(cpp_ex_msg, e.what(), 256); \ + std::strncpy(cpp_ex_msg, e.what(), 512); \ goto throw_cpp_ex_as_R_err; \ } \ if (false) { \