summaryrefslogtreecommitdiffstats
path: root/src/core/file_sys/ips_layer.cpp (unfollow)
Commit message (Collapse)AuthorFilesLines
2020-09-22ips_layer: Eliminate a redundant copy in Parse()Lioncash1-2/+4
Prevents unnecessary copying of the line being parsed.
2019-06-13file_sys/ips_layer: Remove unnecessary reserve() callLioncash1-1/+0
Given 'replace' is assigned to on the following line, this isn't necessary, given the underlying data is going to be overwritten entirely.
2019-06-12common/hex_util: Combine HexVectorToString() and HexArrayToString()Lioncash1-1/+1
These can be generified together by using a concept type to designate them. This also has the benefit of not making copies of potentially very large arrays.
2018-10-30global: Use std::optional instead of boost::optional (#1578)Frederic L1-2/+2
* get rid of boost::optional * Remove optional references * Use std::reference_wrapper for optional references * Fix clang format * Fix clang format part 2 * Adressed feedback * Fix clang format and MacOS build
2018-10-25ips_layer: Use rle_size instead of data_size in RLE patch applicationZach Hilman1-1/+1
Prevents a potential bug when using RLE records in an IPS patch.
2018-10-09ips_layer: Avoid constructing std::vector instances where not necessaryLioncash1-6/+25
We can just compare the existing std::vector instance with a constexpr std::array containing the desired match. This is lighter resource-wise, as we don't need to allocate on the heap.
2018-10-09ips_layer: Remove unnecessary explicit std::pair constructor in std::arrayLioncash1-5/+13
Makes the layout of the array consistent, by making all elements match, instead of special-casing the first one.
2018-10-09ips_layer: Add missing includesLioncash1-1/+12
Adds missing includes to prevent potential compilation issues in the future. Also moves the definition of a struct into the cpp file, so that some includes don't need to be introduced within the header.
2018-10-09ips_layer: std::move data within PatchIPS() and Apply()Lioncash1-2/+5
We don't need to make a copy of the read data, so we can std::move it into the make_shared call here.
2018-10-09ips_layer: Silence truncation and conversion warningsLioncash1-3/+3
Makes type conversions explicit to avoid compiler warnings.
2018-10-04ips_layer: Fix inaccuracies with comments and flagsZach Hilman1-15/+49
Specifically bugs/crashes that arise when putting them in positions that are legal but not typical, such as midline, between patch data, or between patch records.
2018-10-04ips_layer: Deduplicate resource usageZach Hilman1-23/+25
2018-10-04ips_layer: Add support for escape sequences and midline commentsZach Hilman1-7/+38
More accurately follows IPSwitch specification.
2018-10-04ips_layer: Add IPSwitchCompiler to process IPSwitch formatZach Hilman1-0/+142
2018-10-01file_sys: Implement function to apply IPS patchesZach Hilman1-0/+88