<feed xmlns='http://www.w3.org/2005/Atom'>
<title>eglantine-cirakg/src/qt_common/game_list/worker.cpp, branch nx2</title>
<subtitle>Mirror of github.com/cira0100/Eglantine-public nx2, a fork of Djihads80/Eglantine.</subtitle>
<id>https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2</id>
<link rel='self' href='https://git.cirakg.xyz/eglantine-cirakg/atom?h=nx2'/>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/'/>
<updated>2026-11-03T00:23:50+00:00</updated>
<entry>
<title>fix: update BUILD_ID definition and improve path handling in GameListWorker</title>
<updated>2026-11-03T00:23:50+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T18:35:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=bd12e7c4ef7ddfcc56d88ee71612a671f582e47b'/>
<id>urn:sha1:bd12e7c4ef7ddfcc56d88ee71612a671f582e47b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>qt_common: remove unused path capture to fix MSVC build</title>
<updated>2026-11-02T15:46:19+00:00</updated>
<author>
<name>snowstormxd</name>
<email>214507868+snowstormxd@users.noreply.github.com</email>
</author>
<published>2026-11-02T15:46:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=1bcedf8009bbcf3480bf5f23699b728df6760a40'/>
<id>urn:sha1:1bcedf8009bbcf3480bf5f23699b728df6760a40</id>
<content type='text'>
LooseDumpSize was removed, leaving path unused in addEntry. MSVC treats this as error C5233 through /we5233.

Assisted-by: Codex (diagnosis and one-line fix)
</content>
</entry>
<entry>
<title>Merge remote-tracking branch 'origin/nx2' into codex/upstream-loading-hotkeys</title>
<updated>2026-11-02T15:01:57+00:00</updated>
<author>
<name>kraibse</name>
<email>33869366+kraibse@users.noreply.github.com</email>
</author>
<published>2026-11-02T15:01:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=b374709aa202d586dd09f81f3389da8d73fea0d7'/>
<id>urn:sha1:b374709aa202d586dd09f81f3389da8d73fea0d7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>game_list: snapshot directory type before handing rows to the model</title>
<updated>2026-11-01T20:56:44+00:00</updated>
<author>
<name>snowstormxd</name>
<email>214507868+snowstormxd@users.noreply.github.com</email>
</author>
<published>2026-11-01T20:56:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=021c9724371e45fa694c9ee3106b9011364d2853'/>
<id>urn:sha1:021c9724371e45fa694c9ee3106b9011364d2853</id>
<content type='text'>
Flat-list mode deletes unused directory items as queued events are processed. Copy the directory type before queuing that handoff so the worker never reads a directory the GUI may have already deleted.

Assisted-by: Codex (review, implementation and automated validation)
</content>
</entry>
<entry>
<title>game_list: discover loose dumps without walking their RomFS payloads</title>
<updated>2026-11-01T20:52:30+00:00</updated>
<author>
<name>snowstormxd</name>
<email>214507868+snowstormxd@users.noreply.github.com</email>
</author>
<published>2026-11-01T18:37:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=8e777214b02be0f254abdcc1adbc195e765e36a6'/>
<id>urn:sha1:8e777214b02be0f254abdcc1adbc195e765e36a6</id>
<content type='text'>
Defer RomFS construction, reuse one discovery result, omit recursive folder sizing, and release rows discarded by cancellation. Add scan suspension and regression coverage for extracted layouts and Unicode paths.

Assisted-by: Codex (implementation, selective integration and automated validation)
</content>
</entry>
<entry>
<title>loader: add NUP (Unencrypted (Archival) Package) container support</title>
<updated>2026-11-01T18:53:47+00:00</updated>
<author>
<name>a55uka</name>
<email>59313695+a55uka@users.noreply.github.com</email>
</author>
<published>2026-11-01T18:53:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=31b901b93b992580d608fc2f4db9ddac1d755e43'/>
<id>urn:sha1:31b901b93b992580d608fc2f4db9ddac1d755e43</id>
<content type='text'>
</content>
</entry>
<entry>
<title>boot Pokopia past audio init (Switch 2 heap limits, aud:u 1, stpl:u) (#77)</title>
<updated>2026-10-31T14:54:52+00:00</updated>
<author>
<name>Alex</name>
<email>78863999+Sssnowyyy@users.noreply.github.com</email>
</author>
<published>2026-10-31T14:54:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=ee2d55ee497c9467c8df82515165a21eac13fff5'/>
<id>urn:sha1:ee2d55ee497c9467c8df82515165a21eac13fff5</id>
<content type='text'>
* game_list: don't free the worker while it is processing events

OnPopulatingCompleted runs a nested event loop from inside
GameListWorker::ProcessEvents. If the directory watcher fires there, the
repopulate destroys the worker while ProcessEvents is still on the stack
and the next lock hits a freed mutex. Stop the worker synchronously but
free it with deleteLater, and stop ProcessEvents once it has been
replaced.

Assisted-by: Claude Opus 5.5 (code changes, debugging and commit message)

* Fix Switch 2 heap limits and game list reloads during emulation

- SetHeapSize rejected heaps of 8 GiB or more (Switch 1's MainMemorySizeMax),
  so Switch 2 titles that size their heap from the 12 GiB layout (Pokopia
  asks for 9.5 GiB) got ResultInvalidSize and aborted with 2001-0101. Allow
  up to the memory the active layout provides.
- Grow the 39-bit heap region from 8 to 16 GiB so such a heap fits.
- Skip watcher-driven game list reloads while a game runs: Repopulate calls
  CreateFactories, which replaces content providers the running game reads
  (segfault in ContentProviderUnion::GetEntry). Stopping emulation already
  repopulates the list.

Assisted-by: Claude Opus 5.5 (code changes, debugging and commit message)

* nx2: answer aud:u 1 with an IAudioOutManager

nn::audio::OpenAudioOut gets its manager from aud:u command 1 and calls
OpenAudioOut through slot 1 of the returned object. The auto stub
returned no object, so Pokopia jumped through a null vtable 5 s into boot
and never got past its first frame.

Assisted-by: Claude Opus 5.5 (code changes, debugging and commit message)

* nx2: add a stpl:u (stream play) stub with a user service

nn::streamplay::detail::GetUserService opens a session with stpl:u 0
and attaches a system event to the handle command 300 returns. The
generic missing-service stub returned no session, so Pokopia's first
nn::streamplay call jumped through null right after audio setup.

Assisted-by: Claude Opus 5.5 (code changes, debugging and commit message)</content>
</entry>
<entry>
<title>game_list, loader: find loose ExeFS dumps and show their name and icon</title>
<updated>2026-10-31T12:04:06+00:00</updated>
<author>
<name>Meow</name>
<email>59313695+a55uka@users.noreply.github.com</email>
</author>
<published>2026-10-31T11:57:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=4d2cf418374323b30f7ea59be595fa69fe78a82f'/>
<id>urn:sha1:4d2cf418374323b30f7ea59be595fa69fe78a82f</id>
<content type='text'>
</content>
</entry>
<entry>
<title>game_list: find loose ExeFS dumps in shallow scans</title>
<updated>2026-10-30T23:18:50+00:00</updated>
<author>
<name>Meow</name>
<email>59313695+a55uka@users.noreply.github.com</email>
</author>
<published>2026-10-30T23:15:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=e24a1190172bb2e0a1c54ba2ee6c400ba057262a'/>
<id>urn:sha1:e24a1190172bb2e0a1c54ba2ee6c400ba057262a</id>
<content type='text'>
probe the standard loose dump layouts (&lt;game&gt;/exefs/main and
&lt;game&gt;/updates/&lt;title id&gt;/exefs/main) when a scan folder contains a
directory, skip the title-ID folder level when naming loose dumps
after their game folder
</content>
</entry>
<entry>
<title>game_list: name loose ExeFS dumps after their game folder</title>
<updated>2026-10-30T00:49:46+00:00</updated>
<author>
<name>Takoroka</name>
<email>137927095+Takoroka@users.noreply.github.com</email>
</author>
<published>2026-10-29T08:22:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.cirakg.xyz/eglantine-cirakg/commit/?id=7fa88f0bb18ab0ae1896e6060a0c770e73446f51'/>
<id>urn:sha1:7fa88f0bb18ab0ae1896e6060a0c770e73446f51</id>
<content type='text'>
A dumped ExeFS (&lt;game&gt;/exefs/main) has no control data, so it showed up
without a title. Use the game folder's name instead, with "(update)"
for &lt;game&gt;/updates/exefs/main.
</content>
</entry>
</feed>
