Merge remote-tracking branch 'origin/master'

This commit is contained in:
Michael Scire 2019-04-05 13:42:17 -07:00
commit 05c4dfd8f8
13 changed files with 28 additions and 27 deletions

View file

@ -32,7 +32,7 @@ class FsDirUtils {
return rc; return rc;
} }
const size_t parent_len = strnlen(work_path.str, sizeof(work_path.str - 1)); const size_t parent_len = strnlen(work_path.str, sizeof(work_path.str) - 1);
/* Read and handle entries. */ /* Read and handle entries. */
while (true) { while (true) {

View file

@ -29,8 +29,8 @@
#include "ini.h" #include "ini.h"
static FsFileSystem g_CodeFileSystem = {0}; static FsFileSystem g_CodeFileSystem = {};
static FsFileSystem g_HblFileSystem = {0}; static FsFileSystem g_HblFileSystem = {};
static std::vector<u64> g_created_titles; static std::vector<u64> g_created_titles;
static bool g_has_initialized_fs_dev = false; static bool g_has_initialized_fs_dev = false;

View file

@ -33,7 +33,7 @@ void DebugMonitorService::ClearLaunchQueue() {
Result DebugMonitorService::GetNsoInfo(Out<u32> count, OutPointerWithClientSize<Registration::NsoInfo> out, u64 pid) { Result DebugMonitorService::GetNsoInfo(Out<u32> count, OutPointerWithClientSize<Registration::NsoInfo> out, u64 pid) {
/* Zero out the output memory. */ /* Zero out the output memory. */
std::fill(out.pointer, out.pointer + out.num_elements, (const Registration::NsoInfo){0}); std::fill(out.pointer, out.pointer + out.num_elements, Registration::NsoInfo{});
/* Actually return the nso infos. */ /* Actually return the nso infos. */
return Registration::GetNsoInfosForProcessId(out.pointer, out.num_elements, pid, count.GetPointer()); return Registration::GetNsoInfosForProcessId(out.pointer, out.num_elements, pid, count.GetPointer());
} }

View file

@ -22,7 +22,7 @@
#include "ldr_launch_queue.hpp" #include "ldr_launch_queue.hpp"
#include "meta_tools.hpp" #include "meta_tools.hpp"
static std::array<LaunchQueue::LaunchItem, LAUNCH_QUEUE_SIZE> g_launch_queue = {0}; static std::array<LaunchQueue::LaunchItem, LAUNCH_QUEUE_SIZE> g_launch_queue = {};
Result LaunchQueue::Add(u64 tid, const char *args, u64 arg_size) { Result LaunchQueue::Add(u64 tid, const char *args, u64 arg_size) {
if (arg_size > LAUNCH_QUEUE_ARG_SIZE_MAX) { if (arg_size > LAUNCH_QUEUE_ARG_SIZE_MAX) {

View file

@ -38,8 +38,8 @@ Result MapUtils::MapCodeMemoryForProcess(Handle process_h, bool is_64_bit_addres
} }
Result MapUtils::LocateSpaceForMapModern(u64 *out, u64 out_size) { Result MapUtils::LocateSpaceForMapModern(u64 *out, u64 out_size) {
MemoryInfo mem_info = {0}; MemoryInfo mem_info = {};
AddressSpaceInfo address_space = {0}; AddressSpaceInfo address_space = {};
u32 page_info = 0; u32 page_info = 0;
u64 cur_base = 0, cur_end = 0; u64 cur_base = 0, cur_end = 0;
Result rc; Result rc;
@ -94,7 +94,7 @@ Result MapUtils::LocateSpaceForMapModern(u64 *out, u64 out_size) {
Result MapUtils::LocateSpaceForMapDeprecated(u64 *out, u64 out_size) { Result MapUtils::LocateSpaceForMapDeprecated(u64 *out, u64 out_size) {
MemoryInfo mem_info = {0}; MemoryInfo mem_info = {};
u32 page_info = 0; u32 page_info = 0;
Result rc; Result rc;
@ -128,7 +128,7 @@ Result MapUtils::LocateSpaceForMapDeprecated(u64 *out, u64 out_size) {
} }
Result MapUtils::MapCodeMemoryForProcessModern(Handle process_h, u64 base_address, u64 size, u64 *out_code_memory_address) { Result MapUtils::MapCodeMemoryForProcessModern(Handle process_h, u64 base_address, u64 size, u64 *out_code_memory_address) {
AddressSpaceInfo address_space = {0}; AddressSpaceInfo address_space = {};
Result rc; Result rc;
if (R_FAILED((rc = GetAddressSpaceInfo(&address_space, process_h)))) { if (R_FAILED((rc = GetAddressSpaceInfo(&address_space, process_h)))) {

View file

@ -170,6 +170,6 @@ struct MappedCodeMemory {
/* TODO: panic(). */ /* TODO: panic(). */
} }
} }
*this = (const MappedCodeMemory){0}; *this = {};
} }
}; };

View file

@ -84,7 +84,7 @@ FILE *NpdmUtils::OpenNpdm(u64 title_id) {
Result NpdmUtils::LoadNpdmInternal(FILE *f_npdm, NpdmUtils::NpdmCache *cache) { Result NpdmUtils::LoadNpdmInternal(FILE *f_npdm, NpdmUtils::NpdmCache *cache) {
Result rc; Result rc;
cache->info = (const NpdmUtils::NpdmInfo){0}; cache->info = {};
rc = ResultFsPathNotFound; rc = ResultFsPathNotFound;
if (f_npdm == NULL) { if (f_npdm == NULL) {
@ -519,6 +519,6 @@ u32 NpdmUtils::GetApplicationTypeRaw(u32 *caps, size_t num_caps) {
void NpdmUtils::InvalidateCache(u64 tid) { void NpdmUtils::InvalidateCache(u64 tid) {
if (g_npdm_cache.info.title_id == tid) { if (g_npdm_cache.info.title_id == tid) {
g_npdm_cache.info = (const NpdmUtils::NpdmInfo){0}; g_npdm_cache.info = {};
} }
} }

View file

@ -46,9 +46,9 @@ Result NroUtils::ValidateNrrHeader(NrrHeader *header, u64 size, u64 title_id_min
} }
Result NroUtils::LoadNro(Registration::Process *target_proc, Handle process_h, u64 nro_heap_address, u64 nro_heap_size, u64 bss_heap_address, u64 bss_heap_size, u64 *out_address) { Result NroUtils::LoadNro(Registration::Process *target_proc, Handle process_h, u64 nro_heap_address, u64 nro_heap_size, u64 bss_heap_address, u64 bss_heap_size, u64 *out_address) {
NroHeader nro_hdr = {0}; NroHeader nro_hdr = {};
MappedCodeMemory mcm_nro = {0}; MappedCodeMemory mcm_nro = {};
MappedCodeMemory mcm_bss = {0}; MappedCodeMemory mcm_bss = {};
unsigned int i; unsigned int i;
Result rc = ResultSuccess; Result rc = ResultSuccess;
u8 nro_hash[0x20]; u8 nro_hash[0x20];

View file

@ -107,7 +107,7 @@ Result NsoUtils::LoadNsoHeaders(u64 title_id) {
/* Zero out the cache. */ /* Zero out the cache. */
std::fill(g_nso_present, g_nso_present + NSO_NUM_MAX, false); std::fill(g_nso_present, g_nso_present + NSO_NUM_MAX, false);
std::fill(g_nso_headers, g_nso_headers + NSO_NUM_MAX, (const NsoUtils::NsoHeader &){0}); std::fill(g_nso_headers, g_nso_headers + NSO_NUM_MAX, NsoUtils::NsoHeader{});
for (unsigned int i = 0; i < NSO_NUM_MAX; i++) { for (unsigned int i = 0; i < NSO_NUM_MAX; i++) {
f_nso = OpenNso(i, title_id); f_nso = OpenNso(i, title_id);
@ -161,7 +161,8 @@ Result NsoUtils::ValidateNsoLoadSet() {
Result NsoUtils::CalculateNsoLoadExtents(u32 addspace_type, u32 args_size, NsoLoadExtents *extents) { Result NsoUtils::CalculateNsoLoadExtents(u32 addspace_type, u32 args_size, NsoLoadExtents *extents) {
*extents = (const NsoUtils::NsoLoadExtents){0}; *extents = {};
/* Calculate base offsets. */ /* Calculate base offsets. */
for (unsigned int i = 0; i < NSO_NUM_MAX; i++) { for (unsigned int i = 0; i < NSO_NUM_MAX; i++) {
if (g_nso_present[i]) { if (g_nso_present[i]) {

View file

@ -27,7 +27,7 @@
Result ProcessCreation::InitializeProcessInfo(NpdmUtils::NpdmInfo *npdm, Handle reslimit_h, u64 arg_flags, ProcessInfo *out_proc_info) { Result ProcessCreation::InitializeProcessInfo(NpdmUtils::NpdmInfo *npdm, Handle reslimit_h, u64 arg_flags, ProcessInfo *out_proc_info) {
/* Initialize a ProcessInfo using an npdm. */ /* Initialize a ProcessInfo using an npdm. */
*out_proc_info = (const ProcessCreation::ProcessInfo){0}; *out_proc_info = {};
/* Copy all but last char of name, insert NULL terminator. */ /* Copy all but last char of name, insert NULL terminator. */
std::copy(npdm->header->title_name, npdm->header->title_name + sizeof(out_proc_info->name) - 1, out_proc_info->name); std::copy(npdm->header->title_name, npdm->header->title_name + sizeof(out_proc_info->name) - 1, out_proc_info->name);
@ -111,9 +111,9 @@ Result ProcessCreation::InitializeProcessInfo(NpdmUtils::NpdmInfo *npdm, Handle
} }
Result ProcessCreation::CreateProcess(Handle *out_process_h, u64 index, char *nca_path, LaunchQueue::LaunchItem *launch_item, u64 arg_flags, Handle reslimit_h) { Result ProcessCreation::CreateProcess(Handle *out_process_h, u64 index, char *nca_path, LaunchQueue::LaunchItem *launch_item, u64 arg_flags, Handle reslimit_h) {
NpdmUtils::NpdmInfo npdm_info = {0}; NpdmUtils::NpdmInfo npdm_info = {};
ProcessInfo process_info = {0}; ProcessInfo process_info = {};
NsoUtils::NsoLoadExtents nso_extents = {0}; NsoUtils::NsoLoadExtents nso_extents = {};
Registration::Process *target_process; Registration::Process *target_process;
Handle process_h = 0; Handle process_h = 0;
u64 process_id = 0; u64 process_id = 0;

View file

@ -63,7 +63,7 @@ Result ProcessManagerService::GetProgramInfo(OutPointerWithServerSize<ProcessMan
Result rc; Result rc;
char nca_path[FS_MAX_PATH] = {0}; char nca_path[FS_MAX_PATH] = {0};
/* Zero output. */ /* Zero output. */
std::fill(out_program_info.pointer, out_program_info.pointer + out_program_info.num_elements, (const ProcessManagerService::ProgramInfo){0}); std::fill(out_program_info.pointer, out_program_info.pointer + out_program_info.num_elements, ProcessManagerService::ProgramInfo{});
rc = PopulateProgramInfoBuffer(out_program_info.pointer, &tid_sid); rc = PopulateProgramInfoBuffer(out_program_info.pointer, &tid_sid);

View file

@ -22,7 +22,7 @@
#include "ldr_registration.hpp" #include "ldr_registration.hpp"
#include "ldr_nro.hpp" #include "ldr_nro.hpp"
static Registration::List g_registration_list = {0}; static Registration::List g_registration_list = {};
static u64 g_num_registered = 1; static u64 g_num_registered = 1;
Registration::Process *Registration::GetFreeProcess() { Registration::Process *Registration::GetFreeProcess() {
@ -67,7 +67,7 @@ bool Registration::RegisterTidSid(const TidSid *tid_sid, u64 *out_index) {
} }
/* Reset the process. */ /* Reset the process. */
*free_process = {0}; *free_process = {};
free_process->tid_sid = *tid_sid; free_process->tid_sid = *tid_sid;
free_process->in_use = true; free_process->in_use = true;
free_process->index = g_num_registered++; free_process->index = g_num_registered++;
@ -82,7 +82,7 @@ bool Registration::UnregisterIndex(u64 index) {
} }
/* Reset the process. */ /* Reset the process. */
*target_process = {0}; *target_process = {};
return true; return true;
} }
@ -251,7 +251,7 @@ Result Registration::RemoveNroInfo(u64 index, Handle process_h, u64 nro_heap_add
rc = svcUnmapProcessCodeMemory(process_h, info->base_address, nro_heap_address, info->text_size + info->ro_size); rc = svcUnmapProcessCodeMemory(process_h, info->base_address, nro_heap_address, info->text_size + info->ro_size);
} }
} }
target_process->nro_infos[i] = (const NroInfo ){0}; target_process->nro_infos[i] = {};
return rc; return rc;
} }
} }

View file

@ -72,7 +72,7 @@ Result RelocatableObjectsService::UnloadNro(PidDescriptor pid_desc, u64 nro_addr
Result RelocatableObjectsService::LoadNrr(PidDescriptor pid_desc, u64 nrr_address, u64 nrr_size) { Result RelocatableObjectsService::LoadNrr(PidDescriptor pid_desc, u64 nrr_address, u64 nrr_size) {
Result rc = ResultSuccess; Result rc = ResultSuccess;
Registration::Process *target_proc = NULL; Registration::Process *target_proc = NULL;
MappedCodeMemory nrr_info = {0}; MappedCodeMemory nrr_info = {};
ON_SCOPE_EXIT { ON_SCOPE_EXIT {
if (R_FAILED(rc) && nrr_info.IsActive()) { if (R_FAILED(rc) && nrr_info.IsActive()) {
nrr_info.Close(); nrr_info.Close();