<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/Common/SettingsHandler.cpp, branch 2603</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>Remove unused imports</title>
<updated>2026-01-25T15:12:15+00:00</updated>
<author>
<name>Martino Fontana</name>
<email>tinozzo123@gmail.com</email>
</author>
<published>2026-01-23T20:30:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a14c88ba67a51b0a563a5fc800cd089e82ffacaf'/>
<id>a14c88ba67a51b0a563a5fc800cd089e82ffacaf</id>
<content type='text'>
Yellow squiggly lines begone!
Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes.
If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed.
The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports.
Not everything is removed, but the cleanup should be substantial enough.
Because this done on Linux, code that isn't used on it is mostly untouched.
(Hopefully no open PR is depending on these imports...)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Yellow squiggly lines begone!
Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes.
If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed.
The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports.
Not everything is removed, but the cleanup should be substantial enough.
Because this done on Linux, code that isn't used on it is mostly untouched.
(Hopefully no open PR is depending on these imports...)
</pre>
</div>
</content>
</entry>
<entry>
<title>fmt: Replace deprecated `fmt::localtime` usage with `Common::LocalTime`</title>
<updated>2025-06-04T11:32:12+00:00</updated>
<author>
<name>Joshua Vandaële</name>
<email>joshua@vandaele.software</email>
</author>
<published>2025-06-04T11:12:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=4b65cc9a4c51af4308f748b3e7bf25d80db83860'/>
<id>4b65cc9a4c51af4308f748b3e7bf25d80db83860</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Split `SettingsHandler` into separate reader and writer classes</title>
<updated>2024-10-22T03:20:15+00:00</updated>
<author>
<name>Niel Lebeck</name>
<email>niel.lebeck@gmail.com</email>
</author>
<published>2024-04-28T03:07:17+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=1d79991ec4b4fa62df619e9352cd2f4f4c68156d'/>
<id>1d79991ec4b4fa62df619e9352cd2f4f4c68156d</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Eliminate SettingsHandler's `SetBytes` and `Reset` methods</title>
<updated>2024-04-24T00:19:01+00:00</updated>
<author>
<name>Niel Lebeck</name>
<email>niel.lebeck@gmail.com</email>
</author>
<published>2024-04-23T04:51:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=36cdb4a544341e45155ff750c5f67ece71348a52'/>
<id>36cdb4a544341e45155ff750c5f67ece71348a52</id>
<content type='text'>
Also make the `Decrypt` method private.

As far as I can tell, the only motivation for exposing the `SetBytes`
and `Reset` methods is to allow `CBoot::SetupWiiMemory` to use the same
`SettingsHandler` instance to read settings data and then write it back.
It seems cleaner to just use two separate instances, and require a given
`SettingsHandler` instance to be used for either writing data to a
buffer or reading data from a buffer, but not both.

A natural next step is to split the `SettingsHandler` class into two
classes, one for writing data and one for reading data. I've deferred
that change for a future PR.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Also make the `Decrypt` method private.

As far as I can tell, the only motivation for exposing the `SetBytes`
and `Reset` methods is to allow `CBoot::SetupWiiMemory` to use the same
`SettingsHandler` instance to read settings data and then write it back.
It seems cleaner to just use two separate instances, and require a given
`SettingsHandler` instance to be used for either writing data to a
buffer or reading data from a buffer, but not both.

A natural next step is to split the `SettingsHandler` class into two
classes, one for writing data and one for reading data. I've deferred
that change for a future PR.
</pre>
</div>
</content>
</entry>
<entry>
<title>Pass SettingsHandler buffers by const ref instead of rvalue ref</title>
<updated>2024-04-13T01:50:21+00:00</updated>
<author>
<name>Niel Lebeck</name>
<email>niel.lebeck@gmail.com</email>
</author>
<published>2024-04-13T01:50:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=d2b96736e0d5e472afe2fc87df1ac8aa48bf3915'/>
<id>d2b96736e0d5e472afe2fc87df1ac8aa48bf3915</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/SettingsHandler: Use std::string_view more</title>
<updated>2023-12-11T12:54:43+00:00</updated>
<author>
<name>Lioncash</name>
<email>mai.iam2048@gmail.com</email>
</author>
<published>2023-12-11T12:53:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=88a973131cd3f865651bd4169a6e3bf6826fdecc'/>
<id>88a973131cd3f865651bd4169a6e3bf6826fdecc</id>
<content type='text'>
We don't need to enforce the use of std::string instances with
AddSetting(). We can accept views and only construct one string,
rather than three temporaries.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We don't need to enforce the use of std::string instances with
AddSetting(). We can accept views and only construct one string,
rather than three temporaries.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/SettingsHandler: Use std::erase in Decrypt()</title>
<updated>2023-12-11T12:49:43+00:00</updated>
<author>
<name>Lioncash</name>
<email>mai.iam2048@gmail.com</email>
</author>
<published>2023-12-11T12:49:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=04b9f6c28d54aa2f6f202763a9414cb9f6c1348a'/>
<id>04b9f6c28d54aa2f6f202763a9414cb9f6c1348a</id>
<content type='text'>
Same behavior, way less verbose code.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Same behavior, way less verbose code.
</pre>
</div>
</content>
</entry>
<entry>
<title>Resolve [-Wunused-but-set-variable]</title>
<updated>2023-04-12T08:59:57+00:00</updated>
<author>
<name>Minty-Meeo</name>
<email>45425365+Minty-Meeo@users.noreply.github.com</email>
</author>
<published>2023-03-23T17:56:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=efd06a85d2af7da5968a5daba4d601776fd32360'/>
<id>efd06a85d2af7da5968a5daba4d601776fd32360</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use fmt::localtime instead of thread-unsafe std::localtime</title>
<updated>2021-10-15T20:49:13+00:00</updated>
<author>
<name>Léo Lam</name>
<email>leo@leolam.fr</email>
</author>
<published>2021-10-15T20:49:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=fd7df2ccae4ef18e8fdcf3dcf369c8f2ff185825'/>
<id>fd7df2ccae4ef18e8fdcf3dcf369c8f2ff185825</id>
<content type='text'>
fmt::localtime is also less awkward to use compared to std::localtime.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
fmt::localtime is also less awkward to use compared to std::localtime.
</pre>
</div>
</content>
</entry>
<entry>
<title>treewide: convert GPLv2+ license info to SPDX tags</title>
<updated>2021-07-05T02:35:56+00:00</updated>
<author>
<name>Pierre Bourdon</name>
<email>delroth@gmail.com</email>
</author>
<published>2021-07-05T01:22:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=e149ad4f0a9874f354221a7fc76d8f1841e47808'/>
<id>e149ad4f0a9874f354221a7fc76d8f1841e47808</id>
<content type='text'>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
</pre>
</div>
</content>
</entry>
</feed>
