aboutsummaryrefslogtreecommitdiff
path: root/src/core/file_sys/ips_layer.cpp
AgeCommit message (Collapse)Author
2024-01-25vfs: Move vfs files to their own directoryFearlessTobi
2023-12-28ips_layer: prevent out of bounds access with offset exceeding module sizeLiam
2023-09-13ips_layer: Remove uncaught usage of stoul/lllat9nq
2023-02-14remove static from pointer sized or smaller types for aesthetics, change ↵arades79
constexpr static to static constexpr for consistency Signed-off-by: arades79 <scravers@protonmail.com>
2023-02-14add static lifetime to constexpr values to force compile time evaluation ↵arades79
where possible Signed-off-by: arades79 <scravers@protonmail.com>
2022-08-21core/file_sys: fix alignment of BuildIdLiam
2022-08-19core/file_sys: fix BuildId paddingLiam
2022-08-12ips_layer: Delimit parsed hex value stringMorph
Delimits the hex value string on spaces, slashes, carriage returns or newlines, allowing for comments to be added in-line.
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2020-10-20Revert "core: Fix clang build"bunnei
2020-10-17core: Fix clang buildLioncash
Recent changes to the build system that made more warnings be flagged as errors caused building via clang to break. Fixes #4795
2020-10-13core/CMakeLists: Make some warnings errorsLioncash
Makes our error coverage a little more consistent across the board by applying it to Linux side of things as well. This also makes it more consistent with the warning settings in other libraries in the project. This also updates httplib to 0.7.9, as there are several warning cleanups made that allow us to enable several warnings as errors.
2020-09-22ips_layer: Eliminate a redundant copy in Parse()Lioncash
Prevents unnecessary copying of the line being parsed.
2019-06-15Merge pull request #2581 from lioncash/hexZach Hilman
common/hex_util: Combine HexVectorToString() and HexArrayToString()
2019-06-12file_sys/ips_layer: Remove unnecessary reserve() callLioncash
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()Lioncash
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 L
* 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 Hilman
Prevents a potential bug when using RLE records in an IPS patch.
2018-10-09Merge pull request #1461 from lioncash/warnbunnei
ips_layer: Silence truncation and conversion warnings
2018-10-09ips_layer: Avoid constructing std::vector instances where not necessaryLioncash
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::arrayLioncash
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 includesLioncash
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()Lioncash
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 warningsLioncash
Makes type conversions explicit to avoid compiler warnings.
2018-10-04ips_layer: Fix inaccuracies with comments and flagsZach Hilman
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 Hilman
2018-10-04ips_layer: Add support for escape sequences and midline commentsZach Hilman
More accurately follows IPSwitch specification.
2018-10-04ips_layer: Add IPSwitchCompiler to process IPSwitch formatZach Hilman
2018-10-01file_sys: Implement function to apply IPS patchesZach Hilman