service/nvdrv: Use std::move where applicable
Avoids unnecessary reference count increments and decrements. In one case, we don't need to make a shared_ptr copy at all, just to call a member function.
This commit is contained in:
parent
1e4935c3a0
commit
a2cd07d094
@ -2,6 +2,8 @@
|
|||||||
// Licensed under GPLv2 or any later version
|
// Licensed under GPLv2 or any later version
|
||||||
// Refer to the license.txt file included.
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
|
#include <utility>
|
||||||
|
|
||||||
#include "core/hle/ipc_helpers.h"
|
#include "core/hle/ipc_helpers.h"
|
||||||
#include "core/hle/service/nvdrv/devices/nvdevice.h"
|
#include "core/hle/service/nvdrv/devices/nvdevice.h"
|
||||||
#include "core/hle/service/nvdrv/devices/nvdisp_disp0.h"
|
#include "core/hle/service/nvdrv/devices/nvdisp_disp0.h"
|
||||||
@ -45,9 +47,9 @@ u32 Module::Open(std::string device_name) {
|
|||||||
device_name);
|
device_name);
|
||||||
|
|
||||||
auto device = devices[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;
|
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);
|
auto itr = open_files.find(fd);
|
||||||
ASSERT_MSG(itr != open_files.end(), "Tried to talk to an invalid device");
|
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);
|
return device->ioctl({command}, input, output);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user