| Age | Commit message (Collapse) | Author |
|
Given we already have friend:a and friend:u, we should add the remaining
services as well.
|
|
function handler table
|
|
|
|
core: Make converting constructors explicit where applicable
|
|
Avoids unwanted implicit conversions. Thankfully, given the large amount
of cleanup in past PRs, only this tiny amount is left over to cover.
|
|
This is already declared in apm/apm.h
|
|
* Regression and Mode Fixes
* Review Fixes
* string_view correction
* Add operator& for FileSys::Mode
* Return std::string from SanitizePath
* Farming Simulator Fix
* Use != With mode operator&
|
|
vi: Minor changes
|
|
It's undefined behavior to memcpy an object that isn't considered
trivially copyable, so put a compile-time check in to make sure this
doesn't occur.
|
|
Allows avoiding unnecessary copies of the vector depending on the
calling code.
While we're at it, remove a redundant no-parameter base constructor call
|
|
Forgot to include this in 22f448b6327044076959e338811ee576f3dcf093
|
|
This just returns the size of the language code buffer.
|
|
The return code should be 32-bit in size.
|
|
Avoids unnecessary construction of std::string instances where
applicable.
|
|
file_util: Use an enum class for GetUserPath()
|
|
This behaves quite similarly to the SubmitGPFIFO command. Referenced from Ryujinx.
Many thanks to @gdkchan for investigating this!
|
|
Instead of using an unsigned int as a parameter and expecting a user to
always pass in the correct values, we can just convert the enum into an
enum class and use that type as the parameter type instead, which makes
the interface more type safe.
We also get rid of the bookkeeping "NUM_" element in the enum by just
using an unordered map. This function is generally low-frequency in
terms of calls (and I'd hope so, considering otherwise would mean we're
slamming the disk with IO all the time) so I'd consider this acceptable
in this case.
|
|
|
|
HLE/ACC: Stub IManagerForApplication::GetAccountId to return an error.
|
|
audout_u/audren_u: Ensure null terminators are written out in ListAudioOutsImpl(), ListAudioDeviceName(), and GetActiveAudioDeviceName()
|
|
And make IManagerForApplication::CheckAvailability always return false.
Returning a bogus id from GetAccountId causes games to crash on boot.
We should investigate this with a hwtest and either stub it properly or implement it.
|
|
interface/device name
std::string doesn't include the null-terminator in its data() + size()
range. This ensures that the null-terminator will also be written to the buffer
|
|
interface name
Uses a type that doesn't potentially dynamically allocate, and ensures
that the name of the interface is properly null-terminated when writing
it to the buffer.
|
|
With the new overload, we can simply pass the container directly.
|
|
hle_ipc: Introduce generic WriteBuffer overload for multiple container types
|
|
pl_u: Specify correct size for buffers in GetSharedFontInOrderOfPriority()
|
|
HLE/ACC: Change the default user id and small improvements to the way we handle profiles
|
|
HLE/ACC: Write a single whole user id in ListAllUsers and ListOpenUsers.
|
|
pl_u: Remove printf specifier in log call in a log call in GetSharedFontInOrderOfPriority()
|
|
hid: Resolve a signed/unsigned comparison warning
|
|
hle/service: Make constructors explicit where applicable
|
|
The default username for now is "yuzu".
We should eventually allow the creation of users in the emulator and have the ability to modify their parameters.
|
|
on startup.
In IApplicationFunctions::PopLaunchParameter we tell the games that they were launched as user id 1.
|
|
We only emulate a single user id for now.
|
|
nvflinger: Emplace Display instances directly
|
|
This introduces a slightly more generic variant of WriteBuffer().
Notably, this variant doesn't constrain the arguments to only accepting
std::vector instances. It accepts whatever adheres to the
ContiguousContainer concept in the C++ standard library.
This essentially means, std::array, std::string, and std::vector can be
used directly with this interface. The interface no longer forces you to
solely use containers that dynamically allocate.
To ensure our overloads play nice with one another, we only enable the
container-based WriteBuffer if the argument is not a pointer, otherwise
we fall back to the pointer-based one.
|
|
nvdrv: Take std::string by const reference in GetDevice()
|
|
Filesystem: Return EntryType::Directory for the root directory.
|
|
This WriteBuffer overload expects its size argument to be in bytes, not
elements.
|
|
GetSharedFontInOrderOfPriority()
This can just use the fmt specifiers and be type-agnostic.
|
|
fsp_srv: Misc individual changes
|
|
Modernizes the loops themselves while also getting rid of a signed/unsigned
comparison in a loop condition.
|
|
Gets rid of the use of a magic constant
|
|
It is unknown if this is correct behavior, but it makes sense and fixes a regression with Stardew Valley.
|
|
Prevents implicit construction and makes these lingering non-explicit
constructors consistent with the rest of the other classes in services.
|
|
We can use emplace_back to construct the Display instances directly,
instead of constructing them separately and copying them, avoiding the
need to copy std::string and std::vector instances that are part of the
Display struct.
|
|
This is only ever used as a lookup into the device map, so we don't need to
take the std::string instance by value here.
|
|
We can avoid constructing a std::vector here by simply passing a pointer
to the original data and the size of the copy we wish to perform to the
backend's Write() function instead, avoiding copying the data where it's
otherwise not needed.
|
|
function
We were using a second std::vector as a buffer to convert another
std::vector's data into a byte sequence, however we can just use
pointers to the original data and use them directly with WriteBuffer,
which avoids copying the data at all into a separate std::vector.
We simply cast the pointers to u8* (which is allowed by the standard,
given std::uint8_t is an alias for unsigned char on platforms that we
support).
|
|
constructor
Avoids unnecessary atomic reference count incrementing and decrementing
|