Léo Lam
3d21280ab4
DiscIO: Fix out-of-bounds access in NANDContentDataBuffer
...
Accessing buffer[start + size] triggers an error (and a crash) in debug
builds. Using std::copy_n fixes this.
2017-01-23 21:49:26 +01:00
Léo Lam
b892d78872
VolumeWad: Implement GetTMD()
...
This allows getting useful info like the required IOS version for WADs
(for showing it in the UI, for example).
2017-01-23 20:59:02 +01:00
Léo Lam
f89aaee91a
VolumeWad: Remove useless else after return
2017-01-23 18:17:34 +01:00
Léo Lam
2cd287baf7
VolumeWad: Add missing forward declaration
2017-01-23 18:17:34 +01:00
Léo Lam
6128679396
VolumeWad: Clean up variable naming
2017-01-23 18:07:23 +01:00
Léo Lam
6d909b3e30
VolumeWad: In-class initialise member variables
2017-01-23 18:07:21 +01:00
Markus Wick
90ee85f4e8
Merge pull request #4714 from JosJuice/wbfs-file-entry
...
Fix -Wshadow warning for file_entry
2017-01-22 17:56:51 +01:00
JosJuice
79f3b5c5ff
Fix -Wshadow warning for file_entry
...
This struct didn't follow our naming convention,
so let's rename the struct itself instead of
the variable that triggered the warning.
2017-01-22 17:27:37 +01:00
BhaaL
07d1f18f53
CompressFileToBlob: add an explicit seek to make sure we're at the start
2017-01-21 21:42:58 +01:00
BhaaL
30e0f3d9ca
DecompressFileToBlob: don't assume success if decompression failed
2017-01-21 21:42:58 +01:00
BhaaL
24be8c0814
IsGCZBlob: try to leave the file position where it was before
...
callers that don't seek afterwards might be missing a few bytes that way.
2017-01-21 21:42:57 +01:00
Pierre Bourdon
334ddf754e
DiscIO: Export GetKeyFromTicket
...
This function has more uses than just in DiscIO (e.g. WFS).
2017-01-14 17:06:40 +01:00
Pierre Bourdon
650a1fdb1f
DiscIO: Implement functions to lookup tickets
...
These two functions load either a signed ticket or a raw ticket from the
emulated NAND.
The ticket signature skip is refactored out of the ticket writing in
order to be usable by the raw ticket reading function.
2017-01-14 17:06:40 +01:00
Pierre Bourdon
2ed352698f
IOS/ES: Implement ES_AddTicket.
...
Refactor the existing DiscIO::AddTicket to not require the caller to
pass the requested title ID. We do not have the title ID in the ES case,
and it needs to be extracted from the ticket. Since this is always a
safe operation to do (title ID is always in the ticket), the
implementation is made default.
2017-01-14 15:23:16 +01:00
Matthew Parlane
9838afea41
Merge pull request #4479 from GerbilSoft/feature/RVT-R.dev-key
...
Support for RVT-R disc images
2017-01-13 09:56:50 +13:00
Matthew Parlane
d346d4ced1
Merge pull request #4544 from JosJuice/region-enum
...
DiscIO: Add GetRegion function and Region enum
2017-01-13 09:19:27 +13:00
JosJuice
b1873264d7
WbfsBlob: Don't wrap file_entry in std::unique_ptr
...
There doesn't seem to be any reason for doing it.
2017-01-11 13:39:46 +01:00
JosJuice
0363be4320
WbfsBlob: Remove m_total_files
...
std::vector already keeps track of this for us.
2017-01-11 13:39:38 +01:00
JosJuice
5c02795af0
WbfsBlob: Only open each file once
...
The first file used to be opened once by
CreateBlobReader and once inside WbfsFileReader.
2017-01-11 13:33:27 +01:00
JosJuice
8d54bbc528
Don't create new IOFiles when creating a blob
...
...except for WBFS, which is special because
it has the ability to open multiple files.
2017-01-11 13:23:23 +01:00
JosJuice
d1ea00ed88
Only open file once when detecting blob type
2017-01-11 13:23:19 +01:00
Lioncash
a93861ab49
DiscScrubber: Don't take SFileInfo instances by value
...
Avoids unnecessary copies.
2017-01-04 20:12:49 -05:00
Lioncash
c52d1e735a
DiscScrubber: Use an unsigned loop index in ParseDisc
...
Prevents an implicit signed to unsigned conversion when assigning a
partition's group number.
2017-01-04 20:03:12 -05:00
Lioncash
6ff21c48cb
DiscScrubber: Correct printf specifiers
2017-01-04 19:56:39 -05:00
Lioncash
b1a2dec78a
DiscScrubber: Convert a #define into a typed constant
2017-01-04 19:53:31 -05:00
Lioncash
5b1aae0cbf
DiscScrubber: Make struct and variable names conformant to the coding style
2017-01-04 17:04:41 -05:00
Lioncash
4a9bc2340b
DiscScrubber: Convert into a class
...
Allows potential multiple scrubbers to run at once. Also gets rid of the
need to explicitly clean up resources.
2017-01-04 16:06:21 -05:00
JosJuice
f85266df20
SConfig: Replace bNTSC with m_region
...
This lets us get rid of VideoInterface::SetRegionReg,
a huge hack in CEXIMemoryCard, and some minor things.
2017-01-02 20:57:48 +01:00
JosJuice
66ea9f5cc1
DiscIO: Add GetRegion function and Region enum
...
Instead of needing different switch cases for
converting countries to regions in multiple places,
we now only need a single country-to-region switch case
(in DiscIO/Enums.cpp), and we get a nice Region type.
2017-01-02 20:57:11 +01:00
JosJuice
8e4a781974
VolumeDirectory: Modernize variable names
2016-12-26 11:45:22 +01:00
JosJuice
00aa2d37e9
VolumeDirectory: Don't use references inappropriately
...
Integers should be passed as pointers when a function
modifies them (to make it clear that they get modified).
2016-12-26 09:52:18 +01:00
Mat M
9c8e27e3bb
Merge pull request #4558 from JosJuice/volumedirectory-fst-sort
...
VolumeDirectory: Sort the FST
2016-12-25 17:38:58 -05:00
JosJuice
3196f697bb
VolumeDirectory: Use a range-based for loop in ComputeNameSize
2016-12-25 23:01:42 +01:00
JosJuice
f3987d13ea
VolumeDirectory: Make m_totalNameSize a local variable
...
After BuildFST finishes executing, it's never needed again.
2016-12-25 22:57:14 +01:00
JosJuice
a502f069e8
VolumeDirectory: Sort the FST
...
We can't rely on the OS returning files and directories
in a deterministic order, so we should sort them on our own
if we want VolumeDirectory to work for movies and netplay.
2016-12-25 22:35:38 +01:00
JosJuice
9bd514ed1c
Add TGC disc image compatibility
2016-12-18 18:57:36 +01:00
Léo Lam
31ccfffd38
Common: Add alignment header
...
Gets rid of duplicated alignment code.
2016-12-06 20:33:53 +01:00
David Korth
25fe999a79
Added support for Wii RVT-R disc images.
...
These disc images are encrypted and signed using a different set of keys.
We only care about the master key, so we check the signature issuer. If
it matches the debug issuer, then we'll use the RVT-R key. Otherwise,
the previous set of common and Korean keys are used.
2016-12-01 07:51:29 -05:00
Markus Wick
d5ca153c26
Merge pull request #4401 from JosJuice/rename-getuniqueid
...
DiscIO/SConfig: Rename GetUniqueID to GetGameID
2016-10-31 12:39:27 +01:00
JosJuice
1081497cad
DiscIO/SConfig: Rename GetUniqueID to GetGameID
...
We call this "game ID" everywhere else, and it's not
actually completely unique.
2016-10-29 15:24:02 +02:00
JosJuice
d6731d34ef
Remove VolumeCreator logs
...
These logs are very rarely useful and cause the issue
https://bugs.dolphin-emu.org/issues/9767
2016-10-29 13:08:24 +02:00
Lioncash
d9eb7c4e80
NANDContentLoader: Add IOFile forward declaration
...
This would previously fail to compile when included in files that do not
include FileUtil.h due to lack of a type declaration.
This moves the constructor and destructor into the cpp file in order to
satisfy the requirements of unique_ptr construction and deletion. That is,
unique_ptr requires a concrete type at the point of construction and
destruction. If the constructor or destructor is left in the header, then
at the point of construction or destruction, IOFile will still be
considered an incomplete type, as unique_ptr's deleter will still only be
able to see the forward declaration, which it can't use.
2016-10-14 20:27:22 -04:00
shuffle2
cc66f0336f
Merge pull request #3963 from JosJuice/banner-loaded-failure
...
VolumeGC: Set m_banner_loaded when banner loading fails
2016-10-03 06:33:52 -07:00
Mat M
ccfc081697
Merge pull request #4245 from aldelaro5/logs-levels-changes
...
Lots of Logs levels changes (also enable INFO level in every build)
2016-10-02 16:51:44 -04:00
aldelaro5
f0aa9b3751
Reorganise a ton of logs level
...
Most of this commits changes performance decreasing logs from info to debug and also cleans up innacurate levels.
2016-10-01 15:50:28 -04:00
Lioncash
61b977c914
WiiWad: Make WiiWAD constructor explicit
2016-09-25 18:04:11 -04:00
Lioncash
7de0d51345
WiiWad: Move static implementation details to cpp file
...
These functions don't actually depend on any state from the class
instance, so they don't really belong in the header, and are just
an implementation detail.
2016-09-25 18:04:04 -04:00
Lioncash
144c23dead
Filesystem: Return strings from GetFileName without the const qualifier
...
This is mostly pointless and can inhibit move construction
2016-09-18 12:56:25 -04:00
Lioncash
5aeedcd27c
NANDContentLoader: Remove unnecessary trailing semicolons
2016-09-14 20:12:25 -04:00
Lioncash
b43a26b90c
NANDContentLoader: Remove virtual specifier from CNANDContentLoader destructor
...
This class is marked final, so there's no need to declare it as virtual.
2016-09-14 19:45:52 -04:00