Skip to content

Commit

Permalink
[R] avoid leaking exception objects (#9916)
Browse files Browse the repository at this point in the history
  • Loading branch information
david-cortes authored Dec 26, 2023
1 parent 52620fd commit a197899
Showing 1 changed file with 2 additions and 4 deletions.
6 changes: 2 additions & 4 deletions R-package/src/xgboost_R.cc
Original file line number Diff line number Diff line change
Expand Up @@ -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) { \
Expand Down

0 comments on commit a197899

Please sign in to comment.