Commit graph

5 commits

Author SHA1 Message Date
Vadim Peretokin
8cb58cf0ca
Infrastructure: remove MSVC leak detection (#8378)
<!-- Keep the title short & concise so anyone non-technical can
understand it,
     the title appears in PTB changelogs -->
#### Brief overview of PR changes/additions
Remove support for leak detection using MSVC - this functionality hasn't
been in use in a decade, and we're switching to to using
[LeakSanitizer](https://github.com/google/sanitizers/wiki/AddressSanitizerLeakSanitizer)
instead.
#### Motivation for adding to Mudlet
Cleaner code.
#### Other info (issues closed, discussion etc)

---------

Co-authored-by: Claude <noreply@anthropic.com>
2025-10-21 15:11:09 +01:00
Gustavo Sousa
48ce85fec2
Removes deprecated, unused code and fixes tests in TMxpParserTest (#4893)
- TMxpParserTest was testing functions that are never called and not testing the actual running code for some cases
- This commit changes the TMxpTagParser interface, unused functions and updates TMxpParserTest to test the actual code
2021-03-29 13:46:25 +02:00
Stephen Lyons
f639580eb6
Cleanup: remove undesirable unsigned to signed integer comparision (#4492)
This originally was just going to convert a use of `size_t` to hold the
result of a Qt class `::size()` when they use `int` - so as to avoid a
warning about comparing signed and unsigned integers. However I spotted
some other "improvements" that could be made in the same class by using
`::at(int)` instead of `::operator[int]`; by marking unchangable things
as `const` and using pre-increment rather than the slower post-increment
operator.

Signed-off-by: Stephen Lyons <slysven@virginmedia.com>
2020-12-16 21:03:02 +00:00
Gustavo Sousa
0371e0dd53
Port QStringRef to QStringView (#3879) 2020-06-07 07:28:05 +02:00
Gustavo Sousa
102491a743
Refactoring/reimplementation of MXP support (#3625)
Refactoring/reimplementation of MXP protocol
        Extracts MXP support from TBuffer
        Separates input parsing from protocol processing: input is parsed into MxpTag objects by the MxpNodeBuilder and are passed to be handled by the MxpTagProcessor
        Class hierarchy of MxpTagHandler for implementing support for each tag: allows for a clear separation of the implementation of each tag and makes it easier for adding support for new tags
        Defines a clear interface (MxpClient) separating the MXP implementation from other parts of the code
        Solves some limitations of previous implementation such as supporting element definitions not only for<SEND> tags, interpolating named and positional attributes and interpolating &text; placeholder by tag content
        Includes support for COLOR tag
        Handles FONT, U, I, B, VAR and !ENTITY tags, but so far no defined behavior (can be implemented in MxpMudlet)
        Attributes that hold MXP state are now in the Host class to avoid needless copies when TBuffer is copied around
        Introduces QtTests for some of the classes
    Other refactorings intended to simplify TBuffer class, extracting responbilities that aren't directly related to the buffer mgmt
        Extracted TEncodingTable from TBuffer, this class is responsible for mapping encoding names to tables. It also removes some bloat from TBuffer.
        TLinkStore to manage links and associated hints to be displayed.
        TEntityResolver to map character entities, such as &gt; &#32; &#x20; to their associated string values; supports interpolating strings replacing the entity placeholders by their values
2020-05-03 19:09:42 +02:00