This patch handles the std::length_error exception.
Change-Id: Ia569b59783e48ed1144a89d2c946f6a45e481b6f
Signed-off-by: Hwankyu Jhun <h.jhun@samsung.com>
KeyInfo* key_info;
try {
std::vector<std::vector<unsigned char>> values(len);
- key_info = new KeyInfo(Bundle::Type::ByteArray, key, values);
+ key_info = new KeyInfo(Bundle::Type::ByteArray, key, std::move(values));
} catch (Exception& e) {
return e.GetErrorCode();
} catch (const std::bad_alloc& ba) {
return BUNDLE_ERROR_OUT_OF_MEMORY;
+ } catch (const std::length_error&) {
+ return BUNDLE_ERROR_OUT_OF_MEMORY;
}
try {
ret = bundle_add_byte_array(b, "KEY", 3);
ASSERT_EQ(ret, BUNDLE_ERROR_KEY_EXISTS);
+
+ ret = bundle_add_byte_array(b, "aaaa", 1918646073);
+ ASSERT_EQ(ret, BUNDLE_ERROR_OUT_OF_MEMORY);
+
+ ret = bundle_add_byte_array(b, "aaaa", -469762038);
+ ASSERT_EQ(ret, BUNDLE_ERROR_OUT_OF_MEMORY);
}
TEST_F(BundleTest, bundle_init_byte_array_P) {