Commit Graph
2077 Commits
Author SHA1 Message Date
Adrià 21a556f567 Merge pull request #12553 from JJenkx/codex/libc-unscaled-hex-parser-20261028
fix(libc): match unscaled hexadecimal Dinkumware conversion
2026-10-30 21:24:48 +01:00
Adrià 3465fa32fc Merge pull request #13025 from JJenkx/fix/libc-stream-scan-eof-errno
fix(libc): preserve errno on stream scan input exhaustion
2026-10-30 16:29:12 +01:00
Adrià 91cd8ac6fd Merge pull request #13049 from JJenkx/fix/libc-character-scan-lengths
fix(libc): ignore non-wide lengths on character scans
2026-10-30 16:25:56 +01:00
Adrià d6401d794e Merge pull request #13105 from Queuse/codex/test-memccpy-boundaries-20261029
test(libc): guard memccpy stop boundaries
2026-10-30 15:08:47 +01:00
Adrià 280bbad426 Merge pull request #12659 from JJenkx/codex/libc-scaled-nan-subject-20261028
fix(libc): parse scaled NaN subjects without numeric conversion
2026-10-30 13:45:37 +01:00
Adrià cc7e348334 Merge pull request #12524 from JJenkx/codex/libc-unscaled-hex-range-20261028
fix(libc): preserve errno for unscaled hexadecimal range results
2026-10-30 13:05:20 +01:00
Dean 99f7b51d2b Merge pull request #12541 from oneandonlydean/licence-notices-ported-code
docs(libc): add upstream licence notices to ported math and siglist code
2026-10-31 00:50:17 +13:00
Adrià 8304ccaedb Merge pull request #11341 from SteelCrab/review/emscripten-libraries
build(libs): support Emscripten memory64 compilation
2026-10-30 12:49:20 +01:00
Adrià c547272c4c Merge pull request #13057 from JJenkx/fix/libc-short-stream-character-scans
fix(libc): retain short stream character scan fields
2026-10-30 11:43:01 +01:00
Adrià 20b386bd89 Merge pull request #13012 from JJenkx/fix/libc-scan-eof-errno
fix(libc): preserve errno on string scan input exhaustion
2026-10-30 10:42:10 +01:00
Adrià b3773d1a18 Merge pull request #12589 from JJenkx/windows/libc-strerror-s-constraints
fix(libc): report strerror_s violations as titles' libc.prx does
2026-10-30 10:19:26 +01:00
Adrià 1764ec5c60 Merge pull request #12420 from JJenkx/windows/libc-swscanf-ranges
fix(libc): read swscanf scanset ranges and string lengths as titles do
2026-10-30 07:16:41 +01:00
Adrià 49788dbb70 Merge pull request #12435 from plexerPK/codex/macos-write-watch-truncation
fix(libc): forward writes to truncated macOS mappings
2026-10-30 06:41:06 +01:00
Adrià 0362b1521c Merge pull request #12861 from heditrigui/feat/libc-recallocarray
feat(libc): implement recallocarray
2026-10-30 06:36:10 +01:00
Adrià 0a2cda921d Merge pull request #12933 from heditrigui/feat/libc-dprintf
feat(libc): implement dprintf and vdprintf
2026-10-30 06:33:00 +01:00
Adrià 84368bddb2 Merge pull request #12160 from AlexFigas/feat/libc-pmr-resources
feat(libc): provide the pmr new-delete, null and default memory resources
2026-10-30 06:30:55 +01:00
Adrià 902c6ebfe9 Merge pull request #12111 from wanderingbug/cursor/upstream-macos-unwind-e22f
fix(libc): walk the Mach-O compact unwind index
2026-10-30 05:52:53 +01:00
Adrià b48afc66fb Merge pull request #12845 from heditrigui/feat/libc-qsort-r
feat(libc): implement qsort_r
2026-10-30 05:52:07 +01:00
Adrià 84e114e4eb Merge pull request #12715 from MarcZX10/feat/log-to-file
feat(libc): copy the runtime log into a file with ANYPS5_LOG_FILE
2026-10-30 05:51:34 +01:00
JJenkx 58fddd82c6 fix: integrate current main into PR #12659 2026-10-29 23:20:02 -04:00
pista 98248606d4 fix(libs): reject host region release on WebAssembly 2026-10-30 10:50:58 +09:00
pista baedb114f9 test(libs): build Emscripten adapters and check guest long doubles in CI 2026-10-30 10:50:57 +09:00
pista d64e85164b build(libs): let the system libraries compile with Emscripten
Emscripten targets wasm64 without x86 assembly, Linux-only headers or the
x87 long double. These changes add __EMSCRIPTEN__ paths beside the host
ones; native builds compile the same code as before.

- libc: long doubles in guest varargs and scanf go through
  GuestLongDouble, a plain copy where long double is the x87 format;
  APS5_EXPORT emits no assembler alias; the guest arena is one aligned
  allocation that zeroes pages when they are committed again; getifaddrs
  keeps its link-level entries on Linux; /proc lookups and the host
  stderr duplicate are left out.
- libkernel: file-backed mmap, EVFILT_VNODE watches, getcontext and
  setcontext throw; getdents replaces the raw getdents64 syscall;
  getdtablesize takes the resource limit alone.
- VideoOut leaves SDL, the display window and the HDR probe out,
  Sysmodule asks libkernel for unwind information and Net includes
  sys/time.h.
2026-10-30 10:50:57 +09:00
Dean 99b571f879 Merge pull request #11468 from valenciana-nc/fix/guest-heap-header-validation
fix(libc): validate guest heap block headers before freeing
2026-10-30 14:50:19 +13:00
Queuze e51063a127 test(libc): guard memccpy stop boundaries 2026-10-29 22:27:12 -03:00
Adrià 18bf374028 Merge pull request #12178 from Henryisdjfunkyho/fix/libc-nearbyintf-current
fix(libc): raise inexact for nearbyintf
2026-10-30 02:00:49 +01:00
JJenkx 8a25607acd fix(libc): hold the stream lock throughout secure scans 2026-10-29 20:53:06 -04:00
Adrià 76fd1c09e9 Merge pull request #11270 from AlexFigas/fix/libc-llog-dinkumware
fix(libc): compute _LLog with the bundled libc.prx's Dinkumware code
2026-10-30 01:40:35 +01:00
Adrià 96613bba67 Merge pull request #12060 from Ragbie/fix/windows-directory-flock
fix(libkernel): lock directories with flock on Windows as FreeBSD does
2026-10-30 01:04:03 +01:00
JJenkx 63af66d6c5 fix(libc): retain short stream character scan fields 2026-10-29 19:57:12 -04:00
JJenkx ce32d855ba fix(libc): ignore non-wide lengths on character scans 2026-10-29 19:33:32 -04:00
Adrià f0c8f26eec Merge pull request #12676 from JJenkx/windows/libc-ldexpf-errno
fix(libc): leave errno unchanged from ldexpf, as titles' libc.prx does
2026-10-30 00:18:56 +01:00
Adrià 5e216d6aed Merge pull request #10927 from edubox/feat/libc-throw-bad-array-new-length
feat(libc): implement std::_Throw(const std::bad_array_new_length&)
2026-10-30 00:18:44 +01:00
Adrià 202037c3d7 Merge pull request #12691 from JJenkx/codex/libc-bsearch-zero-stride-20261029
fix(libc): allow zero-stride bsearch_s as bundled libc does
2026-10-30 00:18:02 +01:00
Adrià 2e55a9d0f6 Merge pull request #12681 from JJenkx/windows/libc-scalbn-errno
fix(libc): leave errno unchanged from scalbn and scalbnf on every host
2026-10-30 00:02:33 +01:00
Adrià 034e5a015a Merge pull request #11450 from edubox/feat/libc-sce-v2-locinfo
feat(libc): export std::__sce_v2::_Locinfo
2026-10-29 23:37:12 +01:00
Adrià d77adbfab0 Merge pull request #12549 from JJenkx/windows/libc-mktime-normalize-early-years
fix(libc): normalize a pre-1970 calendar before the Windows host mktime
2026-10-29 23:28:20 +01:00
Adrià e1dd37721c Merge pull request #12555 from JJenkx/codex/libc-fltrounds-x87-20261028
fix(libc): read x87 rounding in _Fltrounds
2026-10-29 23:28:14 +01:00
JJenkxandClaude Opus 5.5 fb4fb58c87 fix(libc): report strerror_s violations as titles' libc.prx does
The libc.prx that titles ship (PPSA07923, PPSA05916) rejects a
strerror_s capacity above SIZE_MAX >> 3, not SIZE_MAX >> 1, and calls
the constraint handler with "strerror_s: bad argument", EINVAL and a
null pointer for a null destination, a capacity of 0 or one past that
limit. main passed "strerror_s" and the destination, and wrote the
message for a capacity from 2^61 up.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 23:16:52 +01:00
JJenkx 30d5439075 fix(libc): preserve errno on stream scan input exhaustion 2026-10-29 18:09:10 -04:00
Adrià 5c331df35d Merge pull request #12227 from klosixgaming-arch/perf/evict-skip-unwritten-pages
perf(libc): skip never-written pages when evicting a resident direct-memory run
2026-10-29 23:01:14 +01:00
Adrià 4740534186 Merge pull request #12527 from JJenkx/windows/libc-strerror-extended
fix(libc): name the extended errno values in strerror as titles' libc.prx does
2026-10-29 23:01:08 +01:00
Adrià 51c808fc76 Merge pull request #12573 from JJenkx/windows/libc-time-name-index-wrap
fix(libc): pick strftime and asctime names from a doubled 32-bit index
2026-10-29 22:35:39 +01:00
JJenkx 8a7cd7d35a fix(libc): preserve errno on string scan input exhaustion 2026-10-29 17:20:46 -04:00
Adrià d9f6887afb Merge pull request #12127 from iamthehimansh/split/macos-precise-sleep
fix(libc): absorb macOS nanosleep lateness in PreciseSleep
2026-10-29 22:18:39 +01:00
Adrià 33be5c14bb Merge pull request #11986 from juanpimg/feat/test-guest-sysmodule-spaces
fix(tests): parse maps pathname past whitespace in guest_sysmodule
2026-10-29 21:43:34 +01:00
Dean Galvin 44ef6bd3d3 fix(libc): decide an in-place heap resize from the validated block record
keepsBlockSize and ownedBytes read the block's raw and size words from the guest-writable header. They now take the Block that validatedBlock returns, so the in-place decision uses the same allocation record that free trusts.
2026-10-30 09:25:25 +13:00
Dean Galvin 46dfa09c02 Merge main into PR #11468 2026-10-30 09:25:04 +13:00
Adrià cbc39db363 Merge pull request #12117 from plexerPK/codex/macos-write-watch-nonwrite-faults
fix(libc): forward non-write faults from watched macOS pages
2026-10-29 21:20:52 +01:00
Dean 5d1482d7c1 Merge pull request #12941 from AdnanKhan-ak47/fix/libc-clang-spurious-fp-exceptions
fix(libc): keep clang's SLP vectorizer from raising spurious FP exceptions in libc
2026-10-30 09:20:28 +13:00