From 2bbaf87feaf65cb7489dc1aafd5650df6474b437 Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 31 Jul 2023 14:02:50 +0300 Subject: [PATCH] Use get_json_object_long_field to fetch "amount". --- telegram-bot-api/Client.cpp | 16 ++-------------- 1 file changed, 2 insertions(+), 14 deletions(-) diff --git a/telegram-bot-api/Client.cpp b/telegram-bot-api/Client.cpp index d136f64..c9e3470 100644 --- a/telegram-bot-api/Client.cpp +++ b/telegram-bot-api/Client.cpp @@ -5874,20 +5874,8 @@ td::Result> Client::get_labeled_pri return td::Status::Error(400, "LabeledPrice label must be non-empty"); } - TRY_RESULT(amount, get_json_object_field(object, "amount", td::JsonValue::Type::Null, false)); - td::Slice number; - if (amount.type() == td::JsonValue::Type::Number) { - number = amount.get_number(); - } else if (amount.type() == td::JsonValue::Type::String) { - number = amount.get_string(); - } else { - return td::Status::Error(400, "Field \"amount\" must be of type Number or String"); - } - auto parsed_amount = td::to_integer_safe(number); - if (parsed_amount.is_error()) { - return td::Status::Error(400, "Can't parse \"amount\" as Number"); - } - return make_object(label, parsed_amount.ok()); + TRY_RESULT(amount, get_json_object_long_field(object, "amount", false)); + return make_object(label, amount); } td::Result>> Client::get_labeled_price_parts(