Add checks to C pointer arguments. (#8254)

This commit is contained in:
Jiaming Yuan
2022-09-22 19:02:22 +08:00
committed by GitHub
parent eb7bbee2c9
commit 3fd331f8f2
5 changed files with 216 additions and 33 deletions

View File

@@ -316,4 +316,12 @@ TEST(CAPI, BuildInfo) {
ASSERT_TRUE(get<Object const>(loaded).find("USE_CUDA") != get<Object const>(loaded).cend());
ASSERT_TRUE(get<Object const>(loaded).find("USE_NCCL") != get<Object const>(loaded).cend());
}
TEST(CAPI, NullPtr) {
ASSERT_EQ(XGBSetGlobalConfig(nullptr), -1);
auto const *err = XGBGetLastError();
auto pos = std::string{err}.find("Invalid pointer argument: json_str");
ASSERT_NE(pos, std::string::npos);
XGBAPISetLastError("");
}
} // namespace xgboost