@@ -640,6 +640,12 @@ class RichText {
640640 return std::move (result);
641641 }
642642
643+ static RichText create_plain (string text) {
644+ RichText result;
645+ result.content_ = std::move (text);
646+ return result;
647+ }
648+
643649 bool empty () const {
644650 return type_ == Type::Plain && content_.empty ();
645651 }
@@ -743,9 +749,7 @@ class RichText {
743749 if (button_ != nullptr ) {
744750 if (context.dup_type_ == MessageContentDupType::Forward && !button_->get_forward_text ().empty ()) {
745751 CHECK (result.texts_ .size () == 1u );
746- result.texts_ [0 ] = {};
747- result.texts_ [0 ].type_ = Type::Plain;
748- result.texts_ [0 ].content_ = button_->get_forward_text ();
752+ result.texts_ [0 ] = create_plain (button_->get_forward_text ());
749753 }
750754 result.button_ = make_unique<InlineKeyboardButton>(
751755 button_->clone (context.dialog_id_ , context.dup_type_ , context.is_via_bot_ , true ));
@@ -2779,8 +2783,7 @@ class WebPageBlockButtonRow final : public WebPageBlock {
27792783 Button clone (CloneContext &context) const {
27802784 Button result;
27812785 if (context.dup_type_ == MessageContentDupType::Forward && !button.get_forward_text ().empty ()) {
2782- result.text .type_ = RichText::Type::Plain;
2783- result.text .content_ = button.get_forward_text ();
2786+ result.text = RichText::create_plain (button.get_forward_text ());
27842787 } else {
27852788 result.text = text.clone (context);
27862789 }
0 commit comments