Repository navigation
Conversation
10 tasks done
QRMOE
marked this pull request as ready for review
October 13, 2026 11:00
6 tasks done
|
Other open pull requests touch the same code. Merging one will break the other, or both implement the same thing. If this one builds on them, list them in Depends on.
|
Collaborator
|
Closing: no title is known to reach this. With the queue at 700+ open PRs, please hold off on new PRs that don't name a title needing the change until it's down. If a title stops on this on current main, reopen with the title ID and the log line. |
Contributor
Author
|
Understood. I’ll leave this closed and revisit it only with a title ID and a current-main log showing the failure. I’ll hold off on new PRs without a title needing the change while the queue is high. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Keep
strcasecmp,strncasecmpandstrcasestrin the guest C locale, independently of the host's character locale. The guestsetlocalesupports only C/POSIX, but these functions use hoststd::tolower. UnderGerman_Germany.1252, main therefore compares bytes 0xc9 and 0xe9 as equal and reports a substring match, despite the guest C locale requiring distinct bytes.Fold ASCII uppercase letters only, matching the existing guest character conversion tables and WebKit's case-folding helper. The behavior follows the C-locale cases of FreeBSD 11.4 strcasecmp.c and strcasestr.c. Other guest locales and console behavior remain unverified and are recorded in technical debt. No exports are added.
Tested
075169f7bwithout conflicts. The explicit libs build and all six relevant checks passed: strings, character functions, classic locale, formatting, fnmatch and patched-library loading (7.57 seconds total). The new string check took 1.41 seconds. Main's helper accessor fix3a9cc6368resolves the earlier unwind import failure described below.Windows, MinGW GCC 15.2, Release,
BUILD_TESTING=ON, final base6d7b87370:Host locale German_Germany.1252 leaked into guest C comparisons: strcasecmp=0, strncasecmp=0, strcasestr=matched.30caf2b2a. On final base6d7b87370, it reports 121 libraries loaded and 3 failures: libSceAgc, libSceAgcDriver and libSceVideoOut. PE inspection identifies a missing host import_ZN10LibcUnwind11CursorSlotsEin libSceAgcDriver after the new main unwind-cursor change. This is independent of case folding; patched-library loading success on the final base is not claimed.30caf2b2a; all unblocked components built, but Windows denied recreation of eight unrelated test outputs (guest_sce_net,guest_poll,guest_socket_read_write,guest_tcp,guest_socket_pair,guest_dup,guest_socket_eventsandguest_fstatfs). Avast logs automatic sandboxing of test programs. The local full-build limitation remains; local full-build success is not claimed.Ready for maintainer review. Full Linux/Windows CI requires a maintainer's manual dispatch; marking this PR ready does not claim those jobs passed.
Checklist
main; no other open PR implements the same functionsNotImplemented_nid_no_patch); silent stubs are listed under Silent stubs in their library's technical debt file.mdfiles or images added to the repository