diff --git a/td/telegram/MessageEntity.cpp b/td/telegram/MessageEntity.cpp index 0a13caa49..07477b354 100644 --- a/td/telegram/MessageEntity.cpp +++ b/td/telegram/MessageEntity.cpp @@ -430,6 +430,10 @@ static vector match_bank_card_numbers(Slice str) { auto card_number_begin = ptr; size_t digit_count = 0; while (ptr != end && (is_digit(*ptr) || *ptr == ' ' || *ptr == '-')) { + if (*ptr == ' ' && digit_count >= 16 && digit_count <= 19 && digit_count == static_cast(ptr - card_number_begin)) { + // continuous card number + break; + } digit_count += static_cast(is_digit(*ptr)); ptr++; }