diff options
author | bunnei <bunneidev@gmail.com> | 2018-07-26 04:02:08 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-07-26 04:02:08 +0200 |
commit | b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f (patch) | |
tree | 16c428f77b608d37d75c701d55efa94d090be0f4 /src | |
parent | Merge pull request #822 from lioncash/pm (diff) | |
parent | service/nvdrv: Take std::string in Open() by const reference (diff) | |
download | yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar.gz yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar.bz2 yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar.lz yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar.xz yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.tar.zst yuzu-b0adb9a3d9f91e31231bef33792cbf08cc7ecd7f.zip |
Diffstat (limited to 'src')
-rw-r--r-- | src/core/hle/service/nvdrv/nvdrv.cpp | 10 | ||||
-rw-r--r-- | src/core/hle/service/nvdrv/nvdrv.h | 2 |
2 files changed, 7 insertions, 5 deletions
diff --git a/src/core/hle/service/nvdrv/nvdrv.cpp b/src/core/hle/service/nvdrv/nvdrv.cpp index cc5cfe34e..1555ea806 100644 --- a/src/core/hle/service/nvdrv/nvdrv.cpp +++ b/src/core/hle/service/nvdrv/nvdrv.cpp @@ -2,6 +2,8 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. +#include <utility> + #include "core/hle/ipc_helpers.h" #include "core/hle/service/nvdrv/devices/nvdevice.h" #include "core/hle/service/nvdrv/devices/nvdisp_disp0.h" @@ -40,14 +42,14 @@ Module::Module() { devices["/dev/nvhost-nvdec"] = std::make_shared<Devices::nvhost_nvdec>(); } -u32 Module::Open(std::string device_name) { +u32 Module::Open(const std::string& device_name) { ASSERT_MSG(devices.find(device_name) != devices.end(), "Trying to open unknown device {}", device_name); auto device = devices[device_name]; - u32 fd = next_fd++; + const u32 fd = next_fd++; - open_files[fd] = device; + open_files[fd] = std::move(device); return fd; } @@ -56,7 +58,7 @@ u32 Module::Ioctl(u32 fd, u32_le command, const std::vector<u8>& input, std::vec auto itr = open_files.find(fd); ASSERT_MSG(itr != open_files.end(), "Tried to talk to an invalid device"); - auto device = itr->second; + auto& device = itr->second; return device->ioctl({command}, input, output); } diff --git a/src/core/hle/service/nvdrv/nvdrv.h b/src/core/hle/service/nvdrv/nvdrv.h index 35b2c65fc..184f3c9fc 100644 --- a/src/core/hle/service/nvdrv/nvdrv.h +++ b/src/core/hle/service/nvdrv/nvdrv.h @@ -38,7 +38,7 @@ public: } /// Opens a device node and returns a file descriptor to it. - u32 Open(std::string device_name); + u32 Open(const std::string& device_name); /// Sends an ioctl command to the specified file descriptor. u32 Ioctl(u32 fd, u32 command, const std::vector<u8>& input, std::vector<u8>& output); /// Closes a device file descriptor and returns operation success. |