mirror of
				https://github.com/PabloMK7/citra.git
				synced 2025-10-31 05:40:04 +00:00 
			
		
		
		
	Merge pull request #2790 from yuriks/remove-movefrom
Remove ResultVal::MoveFrom
This commit is contained in:
		
						commit
						b21dfbb295
					
				
					 24 changed files with 57 additions and 56 deletions
				
			
		|  | @ -166,7 +166,7 @@ void HandleSpecialMapping(VMManager& address_space, const AddressMapping& mappin | |||
|     auto vma = address_space | ||||
|                    .MapBackingMemory(mapping.address, target_pointer + offset_into_region, | ||||
|                                      mapping.size, memory_state) | ||||
|                    .MoveFrom(); | ||||
|                    .Unwrap(); | ||||
|     address_space.Reprotect(vma, | ||||
|                             mapping.read_only ? VMAPermission::Read : VMAPermission::ReadWrite); | ||||
| } | ||||
|  | @ -176,14 +176,14 @@ void MapSharedPages(VMManager& address_space) { | |||
|                            .MapBackingMemory(Memory::CONFIG_MEMORY_VADDR, | ||||
|                                              reinterpret_cast<u8*>(&ConfigMem::config_mem), | ||||
|                                              Memory::CONFIG_MEMORY_SIZE, MemoryState::Shared) | ||||
|                            .MoveFrom(); | ||||
|                            .Unwrap(); | ||||
|     address_space.Reprotect(cfg_mem_vma, VMAPermission::Read); | ||||
| 
 | ||||
|     auto shared_page_vma = address_space | ||||
|                                .MapBackingMemory(Memory::SHARED_PAGE_VADDR, | ||||
|                                                  reinterpret_cast<u8*>(&SharedPage::shared_page), | ||||
|                                                  Memory::SHARED_PAGE_SIZE, MemoryState::Shared) | ||||
|                                .MoveFrom(); | ||||
|                                .Unwrap(); | ||||
|     address_space.Reprotect(shared_page_vma, VMAPermission::Read); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -71,7 +71,7 @@ ResultCode ServerSession::HandleSyncRequest() { | |||
| 
 | ||||
| ServerSession::SessionPair ServerSession::CreateSessionPair(const std::string& name, | ||||
|                                                             SharedPtr<ClientPort> port) { | ||||
|     auto server_session = ServerSession::Create(name + "_Server").MoveFrom(); | ||||
|     auto server_session = ServerSession::Create(name + "_Server").Unwrap(); | ||||
|     SharedPtr<ClientSession> client_session(new ClientSession); | ||||
|     client_session->name = name + "_Client"; | ||||
| 
 | ||||
|  |  | |||
|  | @ -389,7 +389,7 @@ ResultVal<SharedPtr<Thread>> Thread::Create(std::string name, VAddr entry_point, | |||
|     thread->wait_objects.clear(); | ||||
|     thread->wait_address = 0; | ||||
|     thread->name = std::move(name); | ||||
|     thread->callback_handle = wakeup_callback_handle_table.Create(thread).MoveFrom(); | ||||
|     thread->callback_handle = wakeup_callback_handle_table.Create(thread).Unwrap(); | ||||
|     thread->owner_process = g_current_process; | ||||
| 
 | ||||
|     // Find the next available TLS index, and mark it as used
 | ||||
|  | @ -484,7 +484,7 @@ SharedPtr<Thread> SetupMainThread(u32 entry_point, s32 priority) { | |||
|     auto thread_res = Thread::Create("main", entry_point, priority, 0, THREADPROCESSORID_0, | ||||
|                                      Memory::HEAP_VADDR_END); | ||||
| 
 | ||||
|     SharedPtr<Thread> thread = thread_res.MoveFrom(); | ||||
|     SharedPtr<Thread> thread = std::move(thread_res).Unwrap(); | ||||
| 
 | ||||
|     thread->context.fpscr = | ||||
|         FPSCR_DEFAULT_NAN | FPSCR_FLUSH_TO_ZERO | FPSCR_ROUND_TOZERO | FPSCR_IXC; // 0x03C00010
 | ||||
|  |  | |||
|  | @ -30,7 +30,7 @@ SharedPtr<Timer> Timer::Create(ResetType reset_type, std::string name) { | |||
|     timer->name = std::move(name); | ||||
|     timer->initial_delay = 0; | ||||
|     timer->interval_delay = 0; | ||||
|     timer->callback_handle = timer_callback_handle_table.Create(timer).MoveFrom(); | ||||
|     timer->callback_handle = timer_callback_handle_table.Create(timer).Unwrap(); | ||||
| 
 | ||||
|     return timer; | ||||
| } | ||||
|  |  | |||
|  | @ -388,13 +388,14 @@ public: | |||
|     } | ||||
| 
 | ||||
|     /// Asserts that the result succeeded and returns a reference to it.
 | ||||
|     T& Unwrap() { | ||||
|     T& Unwrap() & { | ||||
|         ASSERT_MSG(Succeeded(), "Tried to Unwrap empty ResultVal"); | ||||
|         return **this; | ||||
|     } | ||||
| 
 | ||||
|     T&& MoveFrom() { | ||||
|         return std::move(Unwrap()); | ||||
|     T&& Unwrap() && { | ||||
|         ASSERT_MSG(Succeeded(), "Tried to Unwrap empty ResultVal"); | ||||
|         return std::move(**this); | ||||
|     } | ||||
| 
 | ||||
| private: | ||||
|  |  | |||
|  | @ -55,8 +55,8 @@ void Initialize(Service::Interface* self) { | |||
|     u32 flags = rp.Pop<u32>(); | ||||
|     IPC::RequestBuilder rb = rp.MakeBuilder(1, 3); | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(notification_event).MoveFrom(), | ||||
|                        Kernel::g_handle_table.Create(parameter_event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(notification_event).Unwrap(), | ||||
|                        Kernel::g_handle_table.Create(parameter_event).Unwrap()); | ||||
| 
 | ||||
|     // TODO(bunnei): Check if these events are cleared every time Initialize is called.
 | ||||
|     notification_event->Clear(); | ||||
|  | @ -93,7 +93,7 @@ void GetSharedFont(Service::Interface* self) { | |||
|     // allocated, the real APT service calculates this address by scanning the entire address space
 | ||||
|     // (using svcQueryMemory) and searches for an allocation of the same size as the Shared Font.
 | ||||
|     rb.Push(target_address); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(shared_font_mem).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(shared_font_mem).Unwrap()); | ||||
| } | ||||
| 
 | ||||
| void NotifyToWait(Service::Interface* self) { | ||||
|  | @ -115,7 +115,7 @@ void GetLockHandle(Service::Interface* self) { | |||
|     rb.Push(RESULT_SUCCESS);    // No error
 | ||||
|     rb.Push(applet_attributes); // Applet Attributes, this value is passed to Enable.
 | ||||
|     rb.Push<u32>(0);            // Least significant bit = power button state
 | ||||
|     Kernel::Handle handle_copy = Kernel::g_handle_table.Create(lock).MoveFrom(); | ||||
|     Kernel::Handle handle_copy = Kernel::g_handle_table.Create(lock).Unwrap(); | ||||
|     rb.PushCopyHandles(handle_copy); | ||||
| 
 | ||||
|     LOG_WARNING(Service_APT, "(STUBBED) called handle=0x%08X applet_attributes=0x%08X", handle_copy, | ||||
|  | @ -231,7 +231,7 @@ void ReceiveParameter(Service::Interface* self) { | |||
|     rb.Push(static_cast<u32>(next_parameter.buffer.size())); // Parameter buffer size
 | ||||
| 
 | ||||
|     rb.PushMoveHandles((next_parameter.object != nullptr) | ||||
|                            ? Kernel::g_handle_table.Create(next_parameter.object).MoveFrom() | ||||
|                            ? Kernel::g_handle_table.Create(next_parameter.object).Unwrap() | ||||
|                            : 0); | ||||
|     rb.PushStaticBuffer(buffer, static_cast<u32>(next_parameter.buffer.size()), 0); | ||||
| 
 | ||||
|  | @ -261,7 +261,7 @@ void GlanceParameter(Service::Interface* self) { | |||
|     rb.Push(static_cast<u32>(next_parameter.buffer.size())); // Parameter buffer size
 | ||||
| 
 | ||||
|     rb.PushCopyHandles((next_parameter.object != nullptr) | ||||
|                            ? Kernel::g_handle_table.Create(next_parameter.object).MoveFrom() | ||||
|                            ? Kernel::g_handle_table.Create(next_parameter.object).Unwrap() | ||||
|                            : 0); | ||||
|     rb.PushStaticBuffer(buffer, static_cast<u32>(next_parameter.buffer.size()), 0); | ||||
| 
 | ||||
|  |  | |||
|  | @ -347,7 +347,7 @@ void GetVsyncInterruptEvent(Service::Interface* self) { | |||
|         int port = *port_select.begin(); | ||||
|         rb.Push(RESULT_SUCCESS); | ||||
|         rb.PushCopyHandles( | ||||
|             Kernel::g_handle_table.Create(ports[port].vsync_interrupt_event).MoveFrom()); | ||||
|             Kernel::g_handle_table.Create(ports[port].vsync_interrupt_event).Unwrap()); | ||||
|     } else { | ||||
|         LOG_ERROR(Service_CAM, "invalid port_select=%u", port_select.m_val); | ||||
|         rb.Push(ERROR_INVALID_ENUM_VALUE); | ||||
|  | @ -366,7 +366,7 @@ void GetBufferErrorInterruptEvent(Service::Interface* self) { | |||
|         int port = *port_select.begin(); | ||||
|         rb.Push(RESULT_SUCCESS); | ||||
|         rb.PushCopyHandles( | ||||
|             Kernel::g_handle_table.Create(ports[port].buffer_error_interrupt_event).MoveFrom()); | ||||
|             Kernel::g_handle_table.Create(ports[port].buffer_error_interrupt_event).Unwrap()); | ||||
|     } else { | ||||
|         LOG_ERROR(Service_CAM, "invalid port_select=%u", port_select.m_val); | ||||
|         rb.Push(ERROR_INVALID_ENUM_VALUE); | ||||
|  | @ -400,7 +400,7 @@ void SetReceiving(Service::Interface* self) { | |||
|         } | ||||
| 
 | ||||
|         rb.Push(RESULT_SUCCESS); | ||||
|         rb.PushCopyHandles(Kernel::g_handle_table.Create(port.completion_event).MoveFrom()); | ||||
|         rb.PushCopyHandles(Kernel::g_handle_table.Create(port.completion_event).Unwrap()); | ||||
|     } else { | ||||
|         LOG_ERROR(Service_CAM, "invalid port_select=%u", port_select.m_val); | ||||
|         rb.Push(ERROR_INVALID_ENUM_VALUE); | ||||
|  |  | |||
|  | @ -31,8 +31,8 @@ void GetCecStateAbbreviated(Service::Interface* self) { | |||
| void GetCecInfoEventHandle(Service::Interface* self) { | ||||
|     u32* cmd_buff = Kernel::GetCommandBuffer(); | ||||
| 
 | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw;                                      // No error
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(cecinfo_event).MoveFrom(); // Event handle
 | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw;                                    // No error
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(cecinfo_event).Unwrap(); // Event handle
 | ||||
| 
 | ||||
|     LOG_WARNING(Service_CECD, "(STUBBED) called"); | ||||
| } | ||||
|  | @ -40,8 +40,8 @@ void GetCecInfoEventHandle(Service::Interface* self) { | |||
| void GetChangeStateEventHandle(Service::Interface* self) { | ||||
|     u32* cmd_buff = Kernel::GetCommandBuffer(); | ||||
| 
 | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw;                                           // No error
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(change_state_event).MoveFrom(); // Event handle
 | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw;                                         // No error
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(change_state_event).Unwrap(); // Event handle
 | ||||
| 
 | ||||
|     LOG_WARNING(Service_CECD, "(STUBBED) called"); | ||||
| } | ||||
|  |  | |||
|  | @ -406,7 +406,7 @@ ResultCode UpdateConfigNANDSavegame() { | |||
|     auto config_result = Service::FS::OpenFileFromArchive(cfg_system_save_data_archive, path, mode); | ||||
|     ASSERT_MSG(config_result.Succeeded(), "could not open file"); | ||||
| 
 | ||||
|     auto config = config_result.MoveFrom(); | ||||
|     auto config = std::move(config_result).Unwrap(); | ||||
|     config->backend->Write(0, CONFIG_SAVEFILE_SIZE, 1, cfg_config_file_buffer.data()); | ||||
| 
 | ||||
|     return RESULT_SUCCESS; | ||||
|  | @ -560,7 +560,7 @@ ResultCode LoadConfigNANDSaveFile() { | |||
| 
 | ||||
|     // Read the file if it already exists
 | ||||
|     if (config_result.Succeeded()) { | ||||
|         auto config = config_result.MoveFrom(); | ||||
|         auto config = std::move(config_result).Unwrap(); | ||||
|         config->backend->Read(0, CONFIG_SAVEFILE_SIZE, cfg_config_file_buffer.data()); | ||||
|         return RESULT_SUCCESS; | ||||
|     } | ||||
|  |  | |||
|  | @ -51,8 +51,8 @@ static void Initialize(Interface* self) { | |||
| 
 | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; | ||||
|     cmd_buff[2] = IPC::CopyHandleDesc(2); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(mutex).MoveFrom(); | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(shared_memory).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(mutex).Unwrap(); | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(shared_memory).Unwrap(); | ||||
| 
 | ||||
|     LOG_WARNING(Service_CSND, "(STUBBED) called"); | ||||
| } | ||||
|  |  | |||
|  | @ -168,7 +168,7 @@ static void GetSemaphoreEventHandle(Service::Interface* self) { | |||
|     cmd_buff[0] = IPC::MakeHeader(0x16, 1, 2); | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; // No error
 | ||||
|     // cmd_buff[2] not set
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(semaphore_event).MoveFrom(); // Event handle
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(semaphore_event).Unwrap(); // Event handle
 | ||||
| 
 | ||||
|     LOG_WARNING(Service_DSP, "(STUBBED) called"); | ||||
| } | ||||
|  |  | |||
|  | @ -311,7 +311,7 @@ ResultVal<std::shared_ptr<File>> OpenFileFromArchive(ArchiveHandle archive_handl | |||
|     if (backend.Failed()) | ||||
|         return backend.Code(); | ||||
| 
 | ||||
|     auto file = std::shared_ptr<File>(new File(backend.MoveFrom(), path)); | ||||
|     auto file = std::shared_ptr<File>(new File(std::move(backend).Unwrap(), path)); | ||||
|     return MakeResult<std::shared_ptr<File>>(std::move(file)); | ||||
| } | ||||
| 
 | ||||
|  | @ -401,7 +401,7 @@ ResultVal<std::shared_ptr<Directory>> OpenDirectoryFromArchive(ArchiveHandle arc | |||
|     if (backend.Failed()) | ||||
|         return backend.Code(); | ||||
| 
 | ||||
|     auto directory = std::shared_ptr<Directory>(new Directory(backend.MoveFrom(), path)); | ||||
|     auto directory = std::shared_ptr<Directory>(new Directory(std::move(backend).Unwrap(), path)); | ||||
|     return MakeResult<std::shared_ptr<Directory>>(std::move(directory)); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -87,7 +87,7 @@ static void OpenFile(Service::Interface* self) { | |||
|         file->ClientConnected(std::get<SharedPtr<ServerSession>>(sessions)); | ||||
| 
 | ||||
|         rb.PushMoveHandles( | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).MoveFrom()); | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).Unwrap()); | ||||
|     } else { | ||||
|         rb.PushMoveHandles(0); | ||||
|         LOG_ERROR(Service_FS, "failed to get a handle for file %s", file_path.DebugStr().c_str()); | ||||
|  | @ -153,7 +153,7 @@ static void OpenFileDirectly(Service::Interface* self) { | |||
|         file->ClientConnected(std::get<SharedPtr<ServerSession>>(sessions)); | ||||
| 
 | ||||
|         cmd_buff[3] = | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).MoveFrom(); | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).Unwrap(); | ||||
|     } else { | ||||
|         cmd_buff[3] = 0; | ||||
|         LOG_ERROR(Service_FS, "failed to get a handle for file %s mode=%u attributes=%u", | ||||
|  | @ -420,7 +420,7 @@ static void OpenDirectory(Service::Interface* self) { | |||
|         directory->ClientConnected(std::get<SharedPtr<ServerSession>>(sessions)); | ||||
| 
 | ||||
|         cmd_buff[3] = | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).MoveFrom(); | ||||
|             Kernel::g_handle_table.Create(std::get<SharedPtr<ClientSession>>(sessions)).Unwrap(); | ||||
|     } else { | ||||
|         LOG_ERROR(Service_FS, "failed to get a handle for directory type=%d size=%d data=%s", | ||||
|                   dirname_type, dirname_size, dir_path.DebugStr().c_str()); | ||||
|  |  | |||
|  | @ -389,8 +389,8 @@ static void RegisterInterruptRelayQueue(Interface* self) { | |||
|     } else { | ||||
|         cmd_buff[1] = RESULT_SUCCESS.raw; | ||||
|     } | ||||
|     cmd_buff[2] = g_thread_id++;                                             // Thread ID
 | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(g_shared_memory).MoveFrom(); // GSP shared memory
 | ||||
|     cmd_buff[2] = g_thread_id++;                                           // Thread ID
 | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(g_shared_memory).Unwrap(); // GSP shared memory
 | ||||
| 
 | ||||
|     g_interrupt_event->Signal(); // TODO(bunnei): Is this correct?
 | ||||
| 
 | ||||
|  |  | |||
|  | @ -253,12 +253,12 @@ void GetIPCHandles(Service::Interface* self) { | |||
|     cmd_buff[1] = 0;          // No error
 | ||||
|     cmd_buff[2] = 0x14000000; // IPC Command Structure translate-header
 | ||||
|     // TODO(yuriks): Return error from SendSyncRequest is this fails (part of IPC marshalling)
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(Service::HID::shared_mem).MoveFrom(); | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(Service::HID::event_pad_or_touch_1).MoveFrom(); | ||||
|     cmd_buff[5] = Kernel::g_handle_table.Create(Service::HID::event_pad_or_touch_2).MoveFrom(); | ||||
|     cmd_buff[6] = Kernel::g_handle_table.Create(Service::HID::event_accelerometer).MoveFrom(); | ||||
|     cmd_buff[7] = Kernel::g_handle_table.Create(Service::HID::event_gyroscope).MoveFrom(); | ||||
|     cmd_buff[8] = Kernel::g_handle_table.Create(Service::HID::event_debug_pad).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(Service::HID::shared_mem).Unwrap(); | ||||
|     cmd_buff[4] = Kernel::g_handle_table.Create(Service::HID::event_pad_or_touch_1).Unwrap(); | ||||
|     cmd_buff[5] = Kernel::g_handle_table.Create(Service::HID::event_pad_or_touch_2).Unwrap(); | ||||
|     cmd_buff[6] = Kernel::g_handle_table.Create(Service::HID::event_accelerometer).Unwrap(); | ||||
|     cmd_buff[7] = Kernel::g_handle_table.Create(Service::HID::event_gyroscope).Unwrap(); | ||||
|     cmd_buff[8] = Kernel::g_handle_table.Create(Service::HID::event_debug_pad).Unwrap(); | ||||
| } | ||||
| 
 | ||||
| void EnableAccelerometer(Service::Interface* self) { | ||||
|  |  | |||
|  | @ -145,8 +145,8 @@ static void GetHandles(Interface* self) { | |||
|     IPC::RequestParser rp(Kernel::GetCommandBuffer(), 0x01, 0, 0); | ||||
|     IPC::RequestBuilder rb = rp.MakeBuilder(1, 3); | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushMoveHandles(Kernel::g_handle_table.Create(Service::IR::shared_memory).MoveFrom(), | ||||
|                        Kernel::g_handle_table.Create(Service::IR::update_event).MoveFrom()); | ||||
|     rb.PushMoveHandles(Kernel::g_handle_table.Create(Service::IR::shared_memory).Unwrap(), | ||||
|                        Kernel::g_handle_table.Create(Service::IR::update_event).Unwrap()); | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  |  | |||
|  | @ -337,7 +337,7 @@ void GetReceiveEvent(Interface* self) { | |||
|     IPC::RequestBuilder rb(Kernel::GetCommandBuffer(), 0x0A, 1, 2); | ||||
| 
 | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::receive_event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::receive_event).Unwrap()); | ||||
| 
 | ||||
|     LOG_INFO(Service_IR, "called"); | ||||
| } | ||||
|  | @ -354,7 +354,7 @@ void GetSendEvent(Interface* self) { | |||
|     IPC::RequestBuilder rb(Kernel::GetCommandBuffer(), 0x0B, 1, 2); | ||||
| 
 | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::send_event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::send_event).Unwrap()); | ||||
| 
 | ||||
|     LOG_INFO(Service_IR, "called"); | ||||
| } | ||||
|  | @ -394,7 +394,7 @@ static void GetConnectionStatusEvent(Interface* self) { | |||
|     IPC::RequestBuilder rb(Kernel::GetCommandBuffer(), 0x0C, 1, 2); | ||||
| 
 | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::conn_status_event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(Service::IR::conn_status_event).Unwrap()); | ||||
| 
 | ||||
|     LOG_INFO(Service_IR, "called"); | ||||
| } | ||||
|  |  | |||
|  | @ -160,7 +160,7 @@ static void IsSampling(Interface* self) { | |||
| static void GetBufferFullEvent(Interface* self) { | ||||
|     u32* cmd_buff = Kernel::GetCommandBuffer(); | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; // No error
 | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(buffer_full_event).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(buffer_full_event).Unwrap(); | ||||
|     LOG_WARNING(Service_MIC, "(STUBBED) called"); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -95,7 +95,7 @@ void GetTagInRangeEvent(Interface* self) { | |||
|     cmd_buff[0] = IPC::MakeHeader(0xB, 1, 2); | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; | ||||
|     cmd_buff[2] = IPC::CopyHandleDesc(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(tag_in_range_event).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(tag_in_range_event).Unwrap(); | ||||
|     LOG_WARNING(Service_NFC, "(STUBBED) called"); | ||||
| } | ||||
| 
 | ||||
|  | @ -105,7 +105,7 @@ void GetTagOutOfRangeEvent(Interface* self) { | |||
|     cmd_buff[0] = IPC::MakeHeader(0xC, 1, 2); | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; | ||||
|     cmd_buff[2] = IPC::CopyHandleDesc(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(tag_out_of_range_event).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(tag_out_of_range_event).Unwrap(); | ||||
|     LOG_WARNING(Service_NFC, "(STUBBED) called"); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -190,7 +190,7 @@ static void InitializeWithVersion(Interface* self) { | |||
| 
 | ||||
|     IPC::RequestBuilder rb = rp.MakeBuilder(1, 2); | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(connection_status_event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(connection_status_event).Unwrap()); | ||||
| 
 | ||||
|     LOG_DEBUG(Service_NWM, "called sharedmem_size=0x%08X, version=0x%08X, sharedmem_handle=0x%08X", | ||||
|               sharedmem_size, version, sharedmem_handle); | ||||
|  | @ -265,7 +265,7 @@ static void Bind(Interface* self) { | |||
|     IPC::RequestBuilder rb = rp.MakeBuilder(1, 2); | ||||
| 
 | ||||
|     rb.Push(RESULT_SUCCESS); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(event).MoveFrom()); | ||||
|     rb.PushCopyHandles(Kernel::g_handle_table.Create(event).Unwrap()); | ||||
| } | ||||
| 
 | ||||
| /**
 | ||||
|  |  | |||
|  | @ -152,7 +152,7 @@ void Init() { | |||
|         auto gamecoin_result = | ||||
|             Service::FS::OpenFileFromArchive(*archive_result, gamecoin_path, open_mode); | ||||
|         if (gamecoin_result.Succeeded()) { | ||||
|             auto gamecoin = gamecoin_result.MoveFrom(); | ||||
|             auto gamecoin = std::move(gamecoin_result).Unwrap(); | ||||
|             gamecoin->backend->Write(0, sizeof(GameCoin), true, | ||||
|                                      reinterpret_cast<const u8*>(&default_game_coin)); | ||||
|             gamecoin->backend->Close(); | ||||
|  |  | |||
|  | @ -206,7 +206,7 @@ void AddService(Interface* interface_) { | |||
|     auto server_port = | ||||
|         SM::g_service_manager | ||||
|             ->RegisterService(interface_->GetPortName(), interface_->GetMaxSessions()) | ||||
|             .MoveFrom(); | ||||
|             .Unwrap(); | ||||
|     server_port->SetHleHandler(std::shared_ptr<Interface>(interface_)); | ||||
| } | ||||
| 
 | ||||
|  |  | |||
|  | @ -113,13 +113,13 @@ void SRV::GetServiceHandle(Kernel::HLERequestContext& ctx) { | |||
|                   (*session)->GetObjectId()); | ||||
|         IPC::RequestBuilder rb = rp.MakeBuilder(1, 2); | ||||
|         rb.Push(session.Code()); | ||||
|         rb.PushObjects(session.MoveFrom()); | ||||
|         rb.PushObjects(std::move(session).Unwrap()); | ||||
|     } else if (session.Code() == Kernel::ERR_MAX_CONNECTIONS_REACHED && return_port_on_failure) { | ||||
|         LOG_WARNING(Service_SRV, "called service=%s -> ERR_MAX_CONNECTIONS_REACHED, *port*=%u", | ||||
|                     name.c_str(), (*client_port)->GetObjectId()); | ||||
|         IPC::RequestBuilder rb = rp.MakeBuilder(1, 2); | ||||
|         rb.Push(ERR_MAX_CONNECTIONS_REACHED); | ||||
|         rb.PushObjects(client_port.MoveFrom()); | ||||
|         rb.PushObjects(std::move(client_port).Unwrap()); | ||||
|     } else { | ||||
|         LOG_ERROR(Service_SRV, "called service=%s -> error 0x%08X", name.c_str(), session.Code()); | ||||
|         IPC::RequestBuilder rb = rp.MakeBuilder(1, 0); | ||||
|  |  | |||
|  | @ -275,7 +275,7 @@ static void GetTransferEndEvent(Interface* self) { | |||
| 
 | ||||
|     cmd_buff[0] = IPC::MakeHeader(0xF, 2, 0); | ||||
|     cmd_buff[1] = RESULT_SUCCESS.raw; | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(completion_event).MoveFrom(); | ||||
|     cmd_buff[3] = Kernel::g_handle_table.Create(completion_event).Unwrap(); | ||||
| 
 | ||||
|     LOG_DEBUG(Service_Y2R, "called"); | ||||
| } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue