(https://github.githubassets.com) (https://avatars.githubusercontent.com) (https://github-cloud.s3.amazonaws.com) (https://user-images.githubusercontent.com/) (https://github.githubassets.com) (https://avatars.githubusercontent.com) (https://github.githubassets.com/assets/react-e27d1b3e03961e68.js) (https://github.githubassets.com/assets/react-compiler-runtime-4610bd6d3de9c049.js) (https://github.githubassets.com/assets/scheduler-58b860b049ca307c.js) (https://github.githubassets.com/assets/react-dom-e5fd46a22d5c4058.js) (https://github.githubassets.com/assets/react-dom-client-1b4a3ee065998cea.js) (https://github.githubassets.com/assets/react-is-e0b593954b4706d8.js) (https://github.githubassets.com/assets/react-jsx-runtime-4915cb0f5b3aff04.js) (https://github.githubassets.com/assets/react-reconciler-8e99e505c4429605.js) (../../../../github.githubassets.com/assets/light-3a3d2c708970e4e8.css) (../../../../github.githubassets.com/assets/light_high_contrast-9c7b506bdc5ea73f.css) (../../../../github.githubassets.com/assets/dark-c9dacb4ec19616db.css) (../../../../github.githubassets.com/assets/dark_high_contrast-5ef38214a3eabc7d.css) (../../../../github.githubassets.com/assets/primer-primitives-02e066689466a8cd.css) (../../../../github.githubassets.com/assets/primer-38ae573fa780d76a.css) (../../../../github.githubassets.com/assets/global-58d1122073b19732.css) (../../../../github.githubassets.com/assets/github-0b4a3ee3d18dc2f0.css) (../../../../github.githubassets.com/assets/repository-542ca59b4b92999d.css) (https://github.githubassets.com/assets/wp-runtime-3a233b025aab7482.js) (https://github.githubassets.com/assets/app-foundation-71e74aca45a2c757.js) (https://github.githubassets.com/assets/app-runtime-e674540d54849b57.js) (https://github.githubassets.com/assets/fetch-utilities-f66f42a084b728f7.js) (https://github.githubassets.com/assets/ser-bfcafe59f7bf19c3.js) (https://github.githubassets.com/assets/tp-4b19735107e17aad.js) (../../../../github.githubassets.com/assets/app-runtime.24f5c9150f392cc0.module.css) (https://github.githubassets.com/assets/catalyst-5bc36fa5a846f5a0.js) (https://github.githubassets.com/assets/selector-observer-7ae05416e4a383ae.js) (https://github.githubassets.com/assets/relative-time-element-bd833b2c55eec185.js) (https://github.githubassets.com/assets/by-473024a3f6cb3892.js) (https://github.githubassets.com/assets/ja9-b94de714266ba389.js) (https://github.githubassets.com/assets/3h-58b64de9cf94c187.js) (https://github.githubassets.com/assets/hk-0f7e7279bf741cc1.js) (https://github.githubassets.com/assets/jz5-19f5840f01b67db2.js) (https://github.githubassets.com/assets/hj-ece3bec966e8a2b6.js) (https://github.githubassets.com/assets/j0-e3c0cf644824069a.js) (https://github.githubassets.com/assets/runtime-helpers-b7e0a61126a143c7.js) (https://github.githubassets.com/assets/aria-live-5e29bcc254718030.js) (https://github.githubassets.com/assets/hotkey-c8899bfd61abc3fe.js) (https://github.githubassets.com/assets/react-core-9805d764bfaaf96c.js) (https://github.githubassets.com/assets/a9-62b99c0e8869248c.js) (https://github.githubassets.com/assets/urv-515451075b174bab.js) (https://github.githubassets.com/assets/4t-f1181f796eb9ea15.js) (https://github.githubassets.com/assets/pb-d76be1362f1dd31e.js) (https://github.githubassets.com/assets/6n-b72a71e2477d5d76.js) (https://github.githubassets.com/assets/zj-caa8129e3459fabe.js) (https://github.githubassets.com/assets/o6-83ca676b360e8833.js) (https://github.githubassets.com/assets/h9a-2b97d607f57d1e8b.js) (https://github.githubassets.com/assets/js-1a05f02cacc02d47.js) (https://github.githubassets.com/assets/qb-c3cae9d09d4965bd.js) (https://github.githubassets.com/assets/unc-02389c9418913605.js) (https://github.githubassets.com/assets/nu5-c95e9365197cdb2d.js) (../../../../github.githubassets.com/assets/react-core.87fa061dc051f8b3.module.css) (https://github.githubassets.com/assets/primer-react-13c90abd21a03955.js) (https://github.githubassets.com/assets/op-62eb80a0bb6d6b09.js) (https://github.githubassets.com/assets/nc-c6493acd4a9a53cb.js) (https://github.githubassets.com/assets/qmp-f0256da0d9a22116.js) (https://github.githubassets.com/assets/t7l-8b0d4f3655bf535e.js) (https://github.githubassets.com/assets/4u-bdd88d7cbfa8cd99.js) (https://github.githubassets.com/assets/s07-83e99be04123974b.js) (https://github.githubassets.com/assets/d-9f79a60a9db8b774.js) (https://github.githubassets.com/assets/pi-2bbc5eca73187e7d.js) (https://github.githubassets.com/assets/juk-56a6de51222cfb49.js) (https://github.githubassets.com/assets/xi-e95ed6080f8f4c69.js) (https://github.githubassets.com/assets/j8-2e734c23896a33bb.js) (https://github.githubassets.com/assets/du-b439083c54c2ba2d.js) (https://github.githubassets.com/assets/xf1-20792df206e498f6.js) (https://github.githubassets.com/assets/37-40e0d90596fbe745.js) (https://github.githubassets.com/assets/pd7-842f2286b5aa1009.js) (https://github.githubassets.com/assets/sng-82ecf6fe99c62d2b.js) (https://github.githubassets.com/assets/iy-8774e90fdb50dc47.js) (https://github.githubassets.com/assets/18-c8b0ca0d887ddf5e.js) (https://github.githubassets.com/assets/q6b-71638ca4b66a5a75.js) (https://github.githubassets.com/assets/mw5b-09f71c67e9cae32a.js) (https://github.githubassets.com/assets/x-038c491183f964bd.js) (https://github.githubassets.com/assets/yt-a75d66fffab934e4.js) (https://github.githubassets.com/assets/hm-3be9044c1d4228ab.js) (https://github.githubassets.com/assets/v7o-6c9f6f42a8a07262.js) (https://github.githubassets.com/assets/x6-26867b2c110cc40a.js) (https://github.githubassets.com/assets/kc-6d8bc783eff1f84f.js) (https://github.githubassets.com/assets/xr-65b6a52841ca3962.js) (https://github.githubassets.com/assets/2zj-7cea2aaf2496ff64.js) (https://github.githubassets.com/assets/tv-a4baca4ffa872f2b.js) (https://github.githubassets.com/assets/wb-28a2d3a89f566d7e.js) (https://github.githubassets.com/assets/h2-dd19ae92e90e1aa2.js) (../../../../github.githubassets.com/assets/primer-react-css.b3e5d651631108a3.module.css) (../../../../github.githubassets.com/assets/repo.6cebcad021074333.module.css) [BUG] bionic: wcscspn()/wcspbrk() treat every wchar_t >= 0x100 as a match (Android 17, CP3A.260905.009) · Issue #2260 · android/ndk · GitHub (repo_issues) (https://github.githubassets.com/) (https://github.com/opensearch.xml) (GitHub) (https://github.com/fluidicon.png) (GitHub) (1856) (2260.html) (https://github.githubassets.com/assets/pinned-octocat-093da3e6fa40.svg) (https://github.githubassets.com/favicons/favicon.png) (../../../../github.githubassets.com/favicons/favicon.svg) (../../../manifest.json) (2260.html#start-of-content) Skip to content (https://github.githubassets.com/assets/j2-d8c15a6aae553b3c.js) (https://github.githubassets.com/assets/keyboard-shortcuts-dialog-82b892c79344f39f.js) (../../../../github.githubassets.com/assets/keyboard-shortcuts-dialog.43e93acefe848f45.module.css) (https://github.githubassets.com/assets/app-install-banner-partial-d9486fc098d87b4e.js) (../../../../github.githubassets.com/assets/app-install-banner-partial.60a3f50e99894925.module.css) (https://github.githubassets.com/assets/et9-2279d628e7f40bd7.js) (https://github.githubassets.com/assets/7o-9f01ad99478baf00.js) (https://github.githubassets.com/assets/fz-b23f6138726ccc09.js) (https://github.githubassets.com/assets/c0-b09336246a674ec5.js) (https://github.githubassets.com/assets/hw-4323a26524c649cc.js) (https://github.githubassets.com/assets/e4-d4469fe3db7b28ec.js) (https://github.githubassets.com/assets/53-a95bc94b09fcadb7.js) (https://github.githubassets.com/assets/marketing-header-020f76d539529df7.js) (../../../../github.githubassets.com/assets/primer-react-brand-css.075720f2d87777ef.module.css) (../../../../github.githubassets.com/assets/marketing-header.852039c062328902.module.css) Navigation Menu (https://github.com/) (https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fandroid%2Fndk%2Fissues%2F2260) Sign in Appearance settings Platform AI CODE CREATION (https://github.com/features/copilot) GitHub Copilot Write better code with AI (https://github.com/features/ai/github-app) GitHub Copilot app Direct agents from issue to merge (https://github.com/mcp) MCP Registry Integrate external tools DEVELOPER WORKFLOWS (https://github.com/features/actions) Actions Automate any workflow (https://github.com/features/codespaces) Codespaces Instant dev environments (https://github.com/features/issues) Issues Plan and track work (https://github.com/features/code-review) Code Review Manage code changes (https://github.com/features/code-quality) Code Quality Enforce quality at merge APPLICATION SECURITY (https://github.com/security/advanced-security) GitHub Advanced Security Find and fix vulnerabilities (https://github.com/security/advanced-security/code-security) Code security Secure your code as you build (https://github.com/security/advanced-security/secret-protection) Secret protection Stop leaks before they start EXPLORE (https://github.com/why-github) Why GitHub (https://docs.github.com) Documentation (https://github.blog) Blog (https://github.blog/changelog) Changelog (https://github.com/marketplace) Marketplace (https://github.com/features) View all features Solutions BY COMPANY SIZE (https://github.com/enterprise) Enterprises (https://github.com/team) Small and medium teams (https://github.com/enterprise/startups) Startups (https://github.com/solutions/industry/nonprofits) Nonprofits BY USE CASE (https://github.com/solutions/use-case/app-modernization) App Modernization (https://github.com/solutions/use-case/devsecops) DevSecOps (https://github.com/solutions/use-case/devops) DevOps (https://github.com/solutions/use-case/ci-cd) CI/CD (https://github.com/solutions/use-case) View all use cases BY INDUSTRY (https://github.com/solutions/industry/healthcare) Healthcare (https://github.com/solutions/industry/financial-services) Financial services (https://github.com/solutions/industry/manufacturing) Manufacturing (https://github.com/solutions/industry/government) Government (https://github.com/solutions/industry) View all industries (https://github.com/solutions) View all solutions Resources EXPLORE BY TOPIC (https://github.com/resources/articles?topic=ai) AI (https://github.com/resources/articles?topic=software-development) Software Development (https://github.com/resources/articles?topic=devops) DevOps (https://github.com/resources/articles?topic=security) Security (https://github.com/resources/articles) View all topics EXPLORE BY TYPE (https://github.com/customer-stories) Customer stories (https://github.com/resources/events) Events & webinars (https://github.com/resources/whitepapers) Ebooks & reports (https://github.com/solutions/executive-insights) Business insights (https://skills.github.com) GitHub Skills SUPPORT & SERVICES (https://docs.github.com) Documentation (https://support.github.com) Customer support (https://github.com/orgs/community/discussions) Community forum (https://github.com/trust-center) Trust center (https://github.com/partners) Partners (https://github.com/resources) View all resources Open Source COMMUNITY (https://github.com/open-source/sponsors) GitHub Sponsors Fund open source developers PROGRAMS (https://securitylab.github.com) Security Lab (https://maintainers.github.com) Maintainer Community (https://stars.github.com) GitHub Stars (https://archiveprogram.github.com) Archive Program REPOSITORIES (https://github.com/topics) Topics (https://github.com/trending) Trending (https://github.com/collections) Collections Enterprise ENTERPRISE SOLUTIONS (https://github.com/enterprise) Enterprise platform AI-powered developer platform AVAILABLE ADD-ONS (https://github.com/security/advanced-security) GitHub Advanced Security Enterprise-grade security features (https://github.com/features/copilot/copilot-business) Copilot for Business Enterprise-grade AI features (https://github.com/enterprise/premium-support) Premium Support Enterprise-grade 24/7 support (https://github.com/pricing) Pricing Search / (https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fandroid%2Fndk%2Fissues%2F2260) Sign in (https://github.com/signup?ref_cta=Sign+up&ref_loc=header+logged+out&ref_page=%2F%3Cuser-name%3E%2F%3Crepo-name%3E%2Fvoltron%2Fissues_fragments%2Fissue_layout&source=header-repo&source_repo=android%2Fndk) Sign up Appearance settings You signed in with another tab or window. (2260.html) Reload to refresh your session. You signed out in another tab or window. (2260.html) Reload to refresh your session. You switched accounts on another tab or window. (2260.html) Reload to refresh your session. Dismiss alert (https://github.githubassets.com/assets/j6-1dc594fa7c0ceb36.js) (https://github.githubassets.com/assets/y5-d2d832f3e2866c5b.js) (https://github.githubassets.com/assets/n4-c5777d10c8b4e392.js) (https://github.githubassets.com/assets/cn-dad50312c0f02a2c.js) (https://github.githubassets.com/assets/kw-3befc41fae8dd086.js) (https://github.githubassets.com/assets/t5-9c946d3e6a9680f8.js) (https://github.githubassets.com/assets/86g-dffecec336e77800.js) (https://github.githubassets.com/assets/iq-f22722af456fcf90.js) (https://github.githubassets.com/assets/p2-349d23ad8773a3d8.js) (https://github.githubassets.com/assets/4d-d66ebfb6ba20a7d6.js) (https://github.githubassets.com/assets/lf-67a3dc224538080d.js) (https://github.githubassets.com/assets/yzb-0785cf14fc5b801a.js) (https://github.githubassets.com/assets/a1-f2c8c11ca3236d62.js) (https://github.githubassets.com/assets/pu-23e6de5e22e00c9d.js) (https://github.githubassets.com/assets/0wl-c1f63d1faed81562.js) (https://github.githubassets.com/assets/wzg-1abe918da7f85716.js) (https://github.githubassets.com/assets/5f-e5cb1e23f331a6e1.js) (https://github.githubassets.com/assets/jr1-0fece33c994893d7.js) (https://github.githubassets.com/assets/wq-3a671ff905805ebf.js) (https://github.githubassets.com/assets/5p-475baa298c0f10f7.js) (https://github.githubassets.com/assets/a7a-93298896423b808b.js) (https://github.githubassets.com/assets/pc-40f3ed11503e0887.js) (https://github.githubassets.com/assets/xfx-ebe10bd469f1d16d.js) (https://github.githubassets.com/assets/ri-d59838d75003eee1.js) (https://github.githubassets.com/assets/global-nav-bar-d2d8c63b28b4b70b.js) (../../../../github.githubassets.com/assets/0wl.e4a798931189690c.module.css) (../../../../github.githubassets.com/assets/global-nav-bar.1b318816b4c93973.module.css) (https://github.com/android) android (https://github.com/android/ndk) ndk Repository navigation (https://github.com/android/ndk) Code (https://github.com/android/ndk/issues) Issues 131 (131) (https://github.com/android/ndk/pulls) Pull requests (https://github.com/android/ndk/discussions) Discussions (https://github.com/android/ndk/actions) Actions (https://github.com/android/ndk/projects) Projects (https://github.com/android/ndk/wiki) Wiki (https://github.com/android/ndk/security) Security and quality (https://github.com/android/ndk/pulse) Insights Moreitems (../../../../github.githubassets.com/assets/app-runtime.24f5c9150f392cc0.module.css) (../../../../github.githubassets.com/assets/primer-react-css.b3e5d651631108a3.module.css) (../../../../github.githubassets.com/assets/react-core.87fa061dc051f8b3.module.css) (../../../../github.githubassets.com/assets/bw0.e8ead73dd8868287.module.css) (../../../../github.githubassets.com/assets/u1s.3266bc9d9a555b64.module.css) (../../../../github.githubassets.com/assets/nl.c11721e7afd9efc7.module.css) (../../../../github.githubassets.com/assets/00.381ce0dfe529a5c8.module.css) (../../../../github.githubassets.com/assets/o3.2aaaaef7fdc83a17.module.css) (../../../../github.githubassets.com/assets/jt.0efab77d2f569710.module.css) (../../../../github.githubassets.com/assets/93.4ae96ab0158063a1.module.css) (../../../../github.githubassets.com/assets/2ho.9879e04b2a698d8e.module.css) (../../../../github.githubassets.com/assets/7z.babf143545d3df21.module.css) (../../../../github.githubassets.com/assets/zzw.3b873c73573fa97b.module.css) (../../../../github.githubassets.com/assets/d2.9cda17f26c2f1dc4.module.css) (../../../../github.githubassets.com/assets/cnq.4727367bdbffac04.module.css) (../../../../github.githubassets.com/assets/6e.1c83603ecbf73134.module.css) (../../../../github.githubassets.com/assets/o15.576e0a05b102e287.module.css) (../../../../github.githubassets.com/assets/app-runtime.24f5c9150f392cc0.module.css) (../../../../github.githubassets.com/assets/primer-react-css.b3e5d651631108a3.module.css) (../../../../github.githubassets.com/assets/react-core.87fa061dc051f8b3.module.css) (../../../../github.githubassets.com/assets/bw0.e8ead73dd8868287.module.css) (../../../../github.githubassets.com/assets/u1s.3266bc9d9a555b64.module.css) (../../../../github.githubassets.com/assets/nl.c11721e7afd9efc7.module.css) (../../../../github.githubassets.com/assets/00.381ce0dfe529a5c8.module.css) (../../../../github.githubassets.com/assets/o3.2aaaaef7fdc83a17.module.css) (../../../../github.githubassets.com/assets/jt.0efab77d2f569710.module.css) (../../../../github.githubassets.com/assets/93.4ae96ab0158063a1.module.css) (../../../../github.githubassets.com/assets/2ho.9879e04b2a698d8e.module.css) (../../../../github.githubassets.com/assets/7z.babf143545d3df21.module.css) (../../../../github.githubassets.com/assets/zzw.3b873c73573fa97b.module.css) (../../../../github.githubassets.com/assets/d2.9cda17f26c2f1dc4.module.css) (../../../../github.githubassets.com/assets/cnq.4727367bdbffac04.module.css) (../../../../github.githubassets.com/assets/6e.1c83603ecbf73134.module.css) (../../../../github.githubassets.com/assets/o15.576e0a05b102e287.module.css) (https://github.githubassets.com/assets/app-runtime-e674540d54849b57.js) (https://github.githubassets.com/assets/hotkey-c8899bfd61abc3fe.js) (https://github.githubassets.com/assets/relative-time-element-bd833b2c55eec185.js) (https://github.githubassets.com/assets/primer-react-13c90abd21a03955.js) (https://github.githubassets.com/assets/react-core-9805d764bfaaf96c.js) (https://github.githubassets.com/assets/fetch-utilities-f66f42a084b728f7.js) (https://github.githubassets.com/assets/by-473024a3f6cb3892.js) (https://github.githubassets.com/assets/j6-1dc594fa7c0ceb36.js) (https://github.githubassets.com/assets/wsr-60fb229ba7cb4eeb.js) (https://github.githubassets.com/assets/kni-4c01eb0c522066bb.js) (https://github.githubassets.com/assets/gu-d98c83102d3ca944.js) (https://github.githubassets.com/assets/urv-515451075b174bab.js) (https://github.githubassets.com/assets/krh-2576960c5637244f.js) (https://github.githubassets.com/assets/gzx-8fa3dbf01886d660.js) (https://github.githubassets.com/assets/n4-c5777d10c8b4e392.js) (https://github.githubassets.com/assets/ns-19014158a7dc1b8f.js) (https://github.githubassets.com/assets/gda-ebda7257023234a5.js) (https://github.githubassets.com/assets/a6a-b8956ccdbb1c4198.js) (https://github.githubassets.com/assets/sa-e76481d048499844.js) (https://github.githubassets.com/assets/s5-5a330b2d7a415860.js) (https://github.githubassets.com/assets/kj-f0cf1f97d4d8a5ce.js) (https://github.githubassets.com/assets/ph-e1029a2d3a7ffcbd.js) (https://github.githubassets.com/assets/rv-156a19d200b952ee.js) (https://github.githubassets.com/assets/la-27ea91f01fa7ffcf.js) (https://github.githubassets.com/assets/07-fcf62c995043e46f.js) (https://github.githubassets.com/assets/fu-7cdc546c83d9a778.js) (https://github.githubassets.com/assets/47z-d1cf560c0af7ce80.js) (https://github.githubassets.com/assets/69i-c07ca1ebfa7f0a14.js) (https://github.githubassets.com/assets/1xi-1cce02d0b4b0399b.js) (https://github.githubassets.com/assets/31-e728cca1f66ceb93.js) (https://github.githubassets.com/assets/lba-aed9e2175b80eba6.js) (https://github.githubassets.com/assets/4e-a7719462989a333a.js) (https://github.githubassets.com/assets/ck-2cd9e0657d776458.js) (https://github.githubassets.com/assets/lzg-50916c3f85ae4086.js) (https://github.githubassets.com/assets/ugx-5d200bccdd2a1390.js) (https://github.githubassets.com/assets/ex-cf9fe6b633ec8adf.js) (https://github.githubassets.com/assets/8i-a452118fa88ecedd.js) (https://github.githubassets.com/assets/md-f7494ee966df8fa5.js) (https://github.githubassets.com/assets/lfo-9fc971c52b0f6154.js) (https://github.githubassets.com/assets/86g-dffecec336e77800.js) (https://github.githubassets.com/assets/0c-179e03023876c955.js) (https://github.githubassets.com/assets/iq-f22722af456fcf90.js) (https://github.githubassets.com/assets/unr-2cb6c940429796f2.js) (https://github.githubassets.com/assets/p2-349d23ad8773a3d8.js) (https://github.githubassets.com/assets/v2-c204002f1013e231.js) (https://github.githubassets.com/assets/eaz-323dc461ce48bcb6.js) (https://github.githubassets.com/assets/4d-d66ebfb6ba20a7d6.js) (https://github.githubassets.com/assets/aw-d27ef2ca0510d21d.js) (https://github.githubassets.com/assets/lj-76c79f401521903c.js) (https://github.githubassets.com/assets/bw0-16881a4d2965d741.js) (https://github.githubassets.com/assets/7u-7300dd006faafdbf.js) (https://github.githubassets.com/assets/lf-67a3dc224538080d.js) (https://github.githubassets.com/assets/u1s-45a7f1198b25a53b.js) (https://github.githubassets.com/assets/1k-568e3b43cd0ad58f.js) (https://github.githubassets.com/assets/t52-380de98fcdb1a91c.js) (https://github.githubassets.com/assets/p7-0dbbc502370d314b.js) (https://github.githubassets.com/assets/yhu-7f79a83b4f81e295.js) (https://github.githubassets.com/assets/2-cc8963f70f3f718e.js) (https://github.githubassets.com/assets/41-cb49c7e1a30146bc.js) (https://github.githubassets.com/assets/1-48886a269bf78551.js) (https://github.githubassets.com/assets/oxc-005f2c86830274e5.js) (https://github.githubassets.com/assets/ys5-9c46c4001a62edea.js) (https://github.githubassets.com/assets/38t-61b5c235131aee26.js) (https://github.githubassets.com/assets/e3-f523c37ea2b7bd33.js) (https://github.githubassets.com/assets/p2u-86627fa9a1b4d6d6.js) (https://github.githubassets.com/assets/r-400ed887aae384aa.js) (https://github.githubassets.com/assets/697-699b3242cb3ab222.js) (https://github.githubassets.com/assets/nl-2f61db25e2965a37.js) (https://github.githubassets.com/assets/aci-ea20e0a34d2aa34f.js) (https://github.githubassets.com/assets/00-4effaa904d64c084.js) (https://github.githubassets.com/assets/hbn-2c3fc00eb6eff17b.js) (https://github.githubassets.com/assets/al-af2e01f0321f9535.js) (https://github.githubassets.com/assets/tvt-07c6c8edb6d417bf.js) (https://github.githubassets.com/assets/qo-403e41744ff25ed7.js) (https://github.githubassets.com/assets/zg-a09093d14c0b63b9.js) (https://github.githubassets.com/assets/a4-102a968864671cd9.js) (https://github.githubassets.com/assets/8e-208ac741b8e91fd3.js) (https://github.githubassets.com/assets/ks-6304921fc71e9705.js) (https://github.githubassets.com/assets/ozd-b6c68145240b835f.js) (https://github.githubassets.com/assets/gcq-09bacee54606f1dd.js) (https://github.githubassets.com/assets/n2a-bc094096343e3219.js) (https://github.githubassets.com/assets/cu-2e6b8534df4f0e21.js) (https://github.githubassets.com/assets/n5k-872556efd5da5647.js) (https://github.githubassets.com/assets/ji9-d1788951fd34d7f3.js) (https://github.githubassets.com/assets/0cg-8abb71370c32f88c.js) (https://github.githubassets.com/assets/o3-77347066c4b411cc.js) (https://github.githubassets.com/assets/jt-a5ad91195beaa646.js) (https://github.githubassets.com/assets/fb-8ea1c7489ef40dec.js) (https://github.githubassets.com/assets/l1g-e37c61e564d12dbb.js) (https://github.githubassets.com/assets/jo-42a2898a3166534a.js) (https://github.githubassets.com/assets/fm-d76aeea3d4ba20ba.js) (https://github.githubassets.com/assets/3h4-b6ba76640a67228b.js) (https://github.githubassets.com/assets/kxw-b3ed1df4a4b44397.js) (https://github.githubassets.com/assets/l1n-6c9687c92b7bf0b6.js) (https://github.githubassets.com/assets/74-5c497ccea3da43c4.js) (https://github.githubassets.com/assets/2h-73e48e9a048fd659.js) (https://github.githubassets.com/assets/ew-a47ef6957be20a0f.js) (https://github.githubassets.com/assets/hn50-171568c16ad8f8b7.js) (https://github.githubassets.com/assets/45q-a2d82303d194328a.js) (https://github.githubassets.com/assets/93-dcd0744fa42f85cb.js) (https://github.githubassets.com/assets/h2a-fe1a35c6432015cd.js) (https://github.githubassets.com/assets/v0-aed6bdf81b6759dc.js) (https://github.githubassets.com/assets/2ho-ca92da79c1bf2176.js) (https://github.githubassets.com/assets/7j-869a5b23fbfec1f3.js) (https://github.githubassets.com/assets/7z-6c813a2737938401.js) (https://github.githubassets.com/assets/ol-9b2e2455f699eab4.js) (https://github.githubassets.com/assets/zzw-8350843691a5d1d5.js) (https://github.githubassets.com/assets/37e-d3f1d8d63fd3a814.js) (https://github.githubassets.com/assets/cqb-092099a8c216653c.js) (https://github.githubassets.com/assets/fi-b6c61fc8cc5d3755.js) (https://github.githubassets.com/assets/8lg-4ac1e1f3b163b394.js) (https://github.githubassets.com/assets/wxe-c12d35369aed06b3.js) (https://github.githubassets.com/assets/chunk-24-ef26f33a1749813e.js) (https://github.githubassets.com/assets/76k-348608fea3131728.js) (https://github.githubassets.com/assets/d2-9fb79f16a7efffe7.js) (https://github.githubassets.com/assets/cnq-bda91e5c432f3ea0.js) (https://github.githubassets.com/assets/chunk-dynamic-github-ui--issues--route-components-0041941cc1b98752.js) (https://github.githubassets.com/assets/chunk-2m-38a561293cc749b5.js) (https://github.githubassets.com/assets/chunk-dynamic-github-ui--issues--IssueViewer-03aab0b29aeb212f.js) (../../../../avatars.githubusercontent.com/u/161305@u=571822039e43f9659a7fb43f93e1113ea1fc2ce2&v=4&size=48) (../../../../avatars.githubusercontent.com/u/161305@s=64&u=571822039e43f9659a7fb43f93e1113ea1fc2ce2&v=4) (../../../../avatars.githubusercontent.com/u/53129816@v=4&size=48) (../../../../avatars.githubusercontent.com/u/4403750@v=4&size=48) (../../../../avatars.githubusercontent.com/u/20117624@v=4&size=48) (../../../../avatars.githubusercontent.com/u/133371@v=4&size=48) (../../../../avatars.githubusercontent.com/u/70200077@s=64&v=4) (https://github.com/android/ndk) [BUG] bionic: wcscspn()/wcspbrk() treat every wchar_t >= 0x100 as a match (Android 17, CP3A.260905.009) #2260 New issue Copy link New issue Copy link Open Open (2260.html#top) [BUG] bionic: wcscspn()/wcspbrk() treat every wchar_t >= 0x100 as a match (Android 17, CP3A.260905.009) #2260 Copy link Labels (https://github.com/android/ndk/issues?q=state%3Aopen%20label%3A%22bug%22) bug Description (https://github.com/francisdb) (@francisdb) (https://github.com/francisdb) francisdb opened (2260.html#issue-5816833748) on Oct 12, 2026 Issue body actions Description On Android 17 builds from September 2026, wcscspn() and wcspbrk() stop at the first character of the string that is >= U+0100 whenever the reject set has two or more characters that are all < U+0100. The character is reported as a match even though it is not in the set. wcsspn() , wcschr() , wcsrchr() , wmemchr() and wcsstr() are correct. Any code that scans wide strings for ASCII delimiters, for example newline or wildcard characters, breaks as soon as the text contains an emoji, CJK, Cyrillic, Greek or Latin Extended character. Affected / unaffected Device Build Result Pixel 7 google/panther/panther:17/CP3A.260905.009/16091614:user/release-keys broken Pixel 8a google/akita/akita:17/CP3A.260905.009/16091614:user/release-keys (patch 2026-09-05) broken Nothing Phone 2 Nothing/PongEEA/Pong:16/BQ2A.250721.001-BP2A.250605.031.A3 (patch 2026-08-01) ok The public android17-release sources (android-17.0.0_r1, June 2026) build wcscspn /wcspbrk from external/llvm-libc, which is a plain nested loop over wchar_t and is correct. The code on the September builds is different (see "Mechanism"), so the regression was introduced between the June and September releases. Reproducer Build with the NDK (aarch64-linux-android30-clang ), push to /data/local/tmp , run with adb shell : #include #include int main (void ) { wchar_t s [] = {'a' , 0x1F680 , 0x100 , 'b' , 'x' , '\n' , 0 }; printf ("wcscspn(s, L\"x\\n\") = %zu (expected 4)\n" , wcscspn (s , L"x\n" )); printf ("wcspbrk(s, L\"x\\n\") = index %ld (expected 4)\n" , (long )(wcspbrk (s , L"x\n" ) - s )); printf ("wcsspn(s, L\"a\\U0001F680\") = %zu (expected 2)\n" , wcsspn (s , L"a\U0001F680" )); return 0 ; } Output on CP3A.260905.009: wcscspn(s, L"x\n") = 1 (expected 4) wcspbrk(s, L"x\n") = index 1 (expected 4) wcsspn(s, L"a\U0001F680") = 2 (expected 2) A sweep of every code point from U+0001 to U+10FFFF (skipping surrogates and the two set members) with wcscspn(L"\n", L"x\n") returns 0 instead of 1 for 1,111,808 code points: every one from U+0100 to U+10FFFF. U+0001 to U+00FF are correct. Which set shapes trigger it (all measured on the Pixel 8a): Reject set Result one character ok two or more characters, all < U+0100 (e.g. L"x\n" , L"\xe9\n" ) broken two or more characters, at least one >= U+0100 ok haystack limited to U+0080..U+00FF ok Mechanism (from the shipped libc.so) Disassembly of wcscspn in /apex/com.android.runtime/lib64/bionic/libc.so on CP3A.260905.009 shows three paths selected by the set: One character: a plain compare loop. Correct. Two or more characters: a 256-byte bool table on the stack is filled from the set while the set characters are in 1..0xFF. If a set character >= 0x100 is seen, the function falls back to calling wcschr() for each haystack character. Correct. Otherwise the haystack is scanned against the table: a2564: ldrb w8, [x9, x8] ; table[c] a2568: tbnz w8, #0, a2578 ; in set -> stop (correct) a256c: ldr w8, [x22, #0x4]! ; next character a2570: cmp w8, #0x100 a2574: b.lo a2564 ; c < 0x100 -> keep scanning a2578: ... ; c >= 0x100 -> STOP, reported as a match A character >= 0x100 cannot be in a set whose members are all < 0x100, so for wcscspn the scan must continue past it. The code stops instead. wcsspn has the same structure, and there stopping is the correct answer (the character is not in the keep set), which is why only the complement functions are wrong. wcspbrk is implemented on top of this scan and inherits the bug. The existing bionic test TEST(wchar, wcspbrk) in tests/wchar_test.cpp only uses ASCII input, so it does not catch this. A test such as EXPECT_EQ(3u, wcscspn(L"aĀb\n", L"x\n")) would. Real-world impact Visual Pinball on Android (libwinevbs, a Unix build of Wine's vbscript engine) stopped loading any table whose VBScript source contains a comment with an emoji after the September update: the lexer uses wcspbrk(ptr, L"\n\r") to skip comments, got the position of the first emoji instead of the line end, and reported "Invalid character". FileSystem.MoveFolder likewise treated every path containing a character >= U+0100 as a wildcard pattern via wcspbrk(src, L"*?><") . Worked around downstream by replacing the calls with plain loops: (https://github.com/vpinball/libwinevbs/pull/41) vpinball/libwinevbs#41 (shipped in (https://github.com/vpinball/vpinball/commit/e7837322f4) vpinball/vpinball@e7837322f4 ). Full disassembly of the affected functions and the probe sources are available on request. I am using a supported NDK I have checked and the NDK I'm using is currently supported Affected versions r29 Reactions are currently unavailable Activity (https://github.com/francisdb) () francisdb added (https://github.com/android/ndk/issues?q=state%3Aopen%20label%3A%22bug%22) bug (2260.html#event-33062684171) on Oct 12, 2026 enh-googlecommentedonOct 12, 2026 (https://github.com/enh-google) (@enh-google) (https://github.com/enh-google) enh-google (2260.html#issuecomment-6131014066) on Oct 12, 2026 Collaborator More actions yeah, that all sounds correct, and seems to still be an issue at ToT. (i was going to say "you know you can just look at the source?", but android-latest-release seems to still be too old to have any of these changes from april :-( ) wcspbrk() is affected because it's just __attribute__((__flatten__)) wchar_t* wcspbrk(const wchar_t* s, const wchar_t* delims) { size_t i = wcscspn(s, delims); if (s[i] != L'\0') return const_cast(s) + i; return nullptr; } but i'll add both missing tests, and ideally try to see if i can find everywhere else we're missing a test that actually uses non-ascii! i'll also see if i can get the fix backported to minimize the number of affected devices. (which is probably a reason to ensure any not-directly-related tests are added in a separate later change.) 😕 React with 😕 16 Reacted by Joaquín Vacas Verísimo, Kunal Agrawal, Vinayak, Doug Lynch, Matheus Araújo, David Allison, LifeIsStrange, JannF, Alexander Pushkov, Oliver Krieg and 6 more 👀 React with 👀 4 Reacted by Joaquín Vacas Verísimo, Doug Lynch, David Allison and Stuart Axon enh-googlecommentedonOct 12, 2026 (https://github.com/enh-google) (@enh-google) (https://github.com/enh-google) enh-google (2260.html#issuecomment-6131561488) on Oct 12, 2026 Collaborator More actions gah, even more embarrassing is that we do have an existing test for wcscspn(), it's just wrong: [ RUN ] wchar.wcscspn bionic/tests/wchar_test.cpp:(1475) Failure in test wchar.wcscspn Expected equality of these values: 2u Which is: 2 wcscspn(L"he\ufffelo", L"lo") Which is: 3 wchar.wcscspn exited with exitcode 1. 🤦 👍 React with 👍 1 Reacted by lfuelling 😕 React with 😕 1 Reacted by Joaquín Vacas Verísimo 👀 React with 👀 1 Reacted by Joaquín Vacas Verísimo francisdbcommentedonOct 13, 2026 (https://github.com/francisdb) (@francisdb) (https://github.com/francisdb) francisdb (2260.html#issuecomment-6138693035) on Oct 13, 2026 Author More actions Thanks for the quick response. It's indeed unfortunate that the source is not available (yet). joaquinvacascommentedonOct 13, 2026 (https://github.com/joaquinvacas) (@joaquinvacas) (https://github.com/joaquinvacas) joaquinvacas (2260.html#issuecomment-6142211007) on Oct 13, 2026 More actions Sorry if it sounds dramatic, because it's not. I'm just worried. Something feels wrong with this... Since Google decided to close AOSP source code, a lot of issues have been flourishing without any kind of fix, and there's no transparency from the Google part... Is there any movement regarding how this is going to be managed? I mean, not this bug, but the issues regarding the management of the AOSP project. 👍 React with 👍 38 Reacted by MasterMann, Marcin Panniak, Terence Eden, Ben Parsons, p12h4, Björn Kettunen, Marcos Del Sol Vives, Braden Farmer, Max Rumpf, Agustín and 28 more pirama-arumuga-nainarcommentedonOct 13, 2026 (https://github.com/pirama-arumuga-nainar) (@pirama-arumuga-nainar) (https://github.com/pirama-arumuga-nainar) pirama-arumuga-nainar (2260.html#issuecomment-6150463252) on Oct 13, 2026 Collaborator More actions Is there any movement regarding how this is going to be managed? I mean, not this bug, but the issues regarding the management of the AOSP project. source.android.com (in particular, (https://source.android.com/docs/whatsnew/site-updates?year=2026#aosp-changes) https://source.android.com/docs/whatsnew/site-updates?year=2026#aosp-changes ) has official communication on this topic. (i was going to say "you know you can just look at the source?", but android-latest-release seems to still be too old to have any of these changes from april :-( ) FWIW, android-latest-release is a manifest branch, and android17-release is the git branch. The android 17 sources for bionic are in (https://android.googlesource.com/platform/bionic/+/refs/heads/android17-release) https://android.googlesource.com/platform/bionic/+/refs/heads/android17-release . zenczykowskicommentedonOct 13, 2026 (https://github.com/zenczykowski) (@zenczykowski) (https://github.com/zenczykowski) zenczykowski (2260.html#issuecomment-6153663661) on Oct 13, 2026 More actions Yes, but where is the source code for Android 17 QPR1 which is what is actually running on Pixel and has been stable for over a month... 👍 React with 👍 7 Reacted by TangerineNightmare, qouteall, dzmitry-lahoda, Tebowy Seba, Florian, zb3 and lfuelling francisdbcommentedonOct 13, 2026 (https://github.com/francisdb) (@francisdb) (https://github.com/francisdb) francisdb (2260.html#issuecomment-6154312174) on Oct 13, 2026 Author More actions There must be a better location to discuss these general issues? 👍 React with 👍 3 Reacted by David Allison, Md Mukhlesur Rahman and Jiachun Tao 😄 React with 😄 2 Reacted by Karel Bilek and lfuelling 👀 React with 👀 1 Reacted by lfuelling (https://github.com/xizhou0606) () xizhou0606 added a commit that references this issue (2260.html#event-33203866976) on Oct 14, 2026 (Add Oct 14 tech news (incremental scan window 06:13-07:0x UTC Oct 14 after e30f542's stated 04:0x-06:13 window end, its feeds pulled 06:02-06:13 UTC Oct 14 with HN sweep span ending 06:01:26Z; this session's feeds pulled 07:01-07:04 UTC Oct 14 with pass 1 landing 29/45 + HN OK (26093B), pass 2 sequential --http1.1 -4 --retry 2 browser-UA round recovering all 16 missing for 45/45 with zero failures, all 45 xml mtimes verified fresh 07:01-07:04Z. Session bug notes: the fetch script's HN check line printed 'HN OK' with an empty byte count because BSD sed replaced only the first occurrence of hn-oct14-h06 on the multi-occurrence check line while the file itself was fine (26093B) - cosmetic only; the parse script's first run aborted on a malformed template literal (nested comma inside ${}), fixed before any evaluation. Concurrent-session hazard: no h07 artifacts pre-existed (tmp/feeds-oct14-h06 is e30f542's own set); the untracked nvd-cve.json/weibo-mss.json/zg-*.html set sat in the worktree from concurrent sessions and is not part of this commit.): one add. (1) Security research firm Doyensec published 'Playing It SFAPE: Code Execution in Isolated User Mode', demonstrating code execution inside a Windows VBS enclave - memory corruption in SFAPE.dll, the VBS enclave behind Microsoft Defender SmartScreen's Enhanced Phishing Protection (which intercepts the Windows sign-in password at login and stores it hashed inside the enclave), chained from a fixed-value write bug in the enclave's Initialize export into full control over the enclave instance in VTL1/Isolated User Mode, the more-trusted world ordinary VTL0 code cannot reach even after kernel/SYSTEM takeover, a vantage point for potentially attacking the Secure Kernel; tracked as CVE-2026-83498, rated Critical elevation-of-privilege by Microsoft with CVSS 7.8, fixed in the September 8, 2026 update, lab proof of concept with no in-the-wild exploitation (primary blog.doyensec.com/2026/10/13/Sfape.html verified via direct curl --http1.1 -4 browser-UA fetch, 152961 bytes, title confirmed, post timeline: 2026-08-07 Initialize fixed-value write reported to MSRC, 2026-08-11 primitive expanded to full VTL1 code execution in the test SFAPE enclave, 2026-09-08 Microsoft shipped the CVE-2026-83498 fix, 2026-09-21 Microsoft confirmed as a duplicate of an internal finding, 2026-09-25 advisory updated to credit Doyensec; the post also inventories other Windows enclave DLLs including Aetm-enclave.dll Always Encrypted, sfsenclave.dll Windows Search and Recall snapshot/settings/storage_support.dll, and cites the 2023-2024 Edge prefs_enclave CVE-2023-36880/CVE-2024-21423 lineage). Relay THN 'Four-Byte Write and Timing Bug Let Researchers Run Code in Windows SmartScreen Enclave' by Swati Khandelwal verified via direct fetch, 169931 bytes, confirming the Critical EoP rating, CVSS 7.8, the September 8 fix and no real-world attacks. Late-serve gap disclosure: the THN relay is stamped Wed 14 Oct 2026 11:22:28 +0530 = 05:52:28Z, inside e30f542's stated 04:0x-06:13 window (its thn serve was pulled 06:02-06:13Z), but that session's commit message evaluates only the 04:34:43Z Patch-Tuesday round-up and mentions no SmartScreen/Doyensec/CVE-2026-83498 item (grep of its message = 0), and no prior commit message or the data file carries any SmartScreen/Doyensec/enclave trace, so the item was missed by its window session and lands in this session as a late-serve evaluated on merits per the Intel-ISPC/jetbrains/Chrome late-serve precedents; first in-set visibility is the THN standing-feed stamp 05:52:28Z, entry dated 05:52 per the Volexity/THN relay-stamp gap-fill precedent with the primary's 2026-10-13 Jekyll date (no time precision) disclosed here; source stays the Doyensec primary per the prefer-primary rule (the THN relay kept as corroboration in this message). New territory - grep shows zero prior VBS/enclave/Doyensec/SmartScreen entries (the only prior SmartScreen-adjacent trace is nothing; the closest class ancestors are the Ghostscript PDF-RCE and VS-Copilot researcher-disclosure adds). Categorized 后端 per the GitLab/Ivanti/Docker/Ghostscript security precedents. Evaluated and skipped: HN sweep clean on the pass-1 pull via hn.algolia.com default UA, cutoff 1791957600 = 06:00 UTC Oct 14 for safe overlap with e30f542's 06:01:26Z span end (26093B, 36 hits, nbHits 36, span 06:00:32Z-07:01:51Z covering through pull time, oldest item the 06:00:32Z Character.ai-404media re-cover of the recorded Character.ai business skip arc). New-territory hits all skipped: 'AOSP Source Releases Are So Late Developers Disassemble Libraries to Report Bugs' 06:18:01Z (41pt/2c, github.com/android/ndk/issues/2260) as a dated repost - the issue's primary fetched via api.github.com (created 2026-10-12T16:09:15Z, a bionic wcscspn/wcspbrk wchar bug report on Android 17 builds with 7 comments, the HN title an editorialized framing of the source-release-lag pain point), ~38h before its first in-set visibility, per the uv-build/fzakaria/Anthropic-unintended-actions dated-repost precedents; daniel.haxx.se 'A UAF turned RCE' 06:22:29Z (4pt) as a same-arc re-cover - primary fetched 71293 bytes confirming it is the detail write-up of CVE-2026-92392 (HIGH, HTTP/2 upload use-after-free) already fixed in curl 8.23.0, and the in-data 2026-10-07 entry already names that CVE with the explicit pre-announcement 细节 10 月 14 日随版公布, so today's post is the promised follow-up of a recorded arc per the Shop-CLI/Gemini-Argon same-arc dedupe precedents (no new CVE, severity change, exploitation news or affected-product expansion); bleeping 'SAP warns of maximum severity OAuth2 SSRF security flaw' 06:29:41Z (1pt) as patch-day class - primary fetched 90365 bytes, Sergiu Gatlan, datePublished 2026-10-13T09:51:02-04:00 = 13:51:02Z (17h before the HN pickup), CVE-2026-89111 in the SAP Cloud SDK for Python inside SAP's October 2026 security-update batch of 20 flaws, the same vendor patch-day round the 2861a56 commit records as the SAP-patchday skip precedents (also present in this session's own bleeping serve); register 'NetBSD may have found a new role: The AI-free FOSS OS' 06:06:22Z (6pt) as an Oct 13-dated opinion-flavored trend piece with a slow HN pickup per the zdnet Dutch-M365 precedent; github.blog 'Building Git infrastructure for agent-scale development' 06:49:49Z as a vendor engineering blog per the box2d/D1/Adobe-Prometheus precedents; ANSSI-FR/MLA 06:50:40Z as an agency crypto-library repo release per the C3/Files precedents; Google Workspace Studio 06:20:21Z as a vendor product launch; support.google.com Gemini model-access changes 06:59:05Z as a routine support-doc page per the 447849d precedent; plus the essay/person-blog tail (alexwennerberg rationalist-length, zachdaniel Carpenter, leadinginproduct vibe-coding-PM, keyvan distillation-defenses, felixrieseberg ambitious-AI), the claude.ai artifact (unverifiable generated content), the Show-HN/repo tail (agent-trials, citesilo, receptive-field CNN, telescope atlas, vocaloid-dbtool), the repost tail (0.999=1 wiki, C++ Core Guidelines, Manna 2003, Thunderbird-alternatives Oct 8 listicle), the video tail (Sixty Symbols, Narnia trailer), the science/society tail (super-ice, shipwreck, Le Monde Musk-France, WSJ defense startups) and the re-covers of recorded arcs (gamesbeat GTA6-Q1-2027 matching this session's heise skip, ars Shkreli matching e30f542's recorded skip, AmEx intent-framework re-cover of the in-data 运通 entry). Feed-side in-window items: thn 05:52:28Z SmartScreen = the add above; heise 06:13:00Z GTA-6-PC-Q1-2027 Bericht as gaming rumor journalism per the no-rumors rule (its angeblich framing, the 06:12:43Z gamesbeat HN re-cover skipped with it); hnrss 06:18:01Z AOSP-NDK = the dated-repost skip above; ithome 19 in-window items all skip-class - 06:20 Nova Lake gaming-perf 消息称 as a GPU/roadmap rumor, 06:22 GTA3-cover-911 and 06:27 GTA6-1.5亿美元营销 as gaming journalism, 06:23 威马讨薪 as business/society, 06:24 映泰 Wildcat Lake SBC and 06:46 日月光 PowerSiP as niche hardware PR, 06:25 华为畅享100 爆料 as a phone rumor, 06:35 CoD3 unofficial PC port as gaming, 06:36 零跑A10s and 06:51 MINI PAUL SMITH as automotive PR, 06:36 奇瑞-博世 ADAS as automotive business, 06:37 be quiet! fans, 06:38 华为 Freebuds Neo, 06:43 索尼 ECM-AX10 and 06:47 iPhone Duo JD as gadget PR, 06:39 大城市地面沉降 and 06:50 氢暗能量 as science journalism, 06:53 阿里千问办公电商版邀测 as vendor PR per the Doubao/OPPO-Manus precedents; infoq-cn/infoq-cn-alt newest label 14:52:06 = 06:52:06Z real per the standing 8h offset with the single in-window item 从大模型到Agent落地 as QCon conference content per the AGNTCon precedents (its 11:46:46 label = 03:46:46Z Anthropic-Git-rewrite re-cover sits out of window, already evaluated by prior sessions); all other feeds' newest items out-of-window matching e30f542's standing recordings (ars 22:48Z, bleeping 22:33Z, chrome 22:37Z, cloudflare 16:20Z, devblogs-dotnet 19:40Z, devblogs-ms Oct 9, devclass Oct 13 08:12Z, github-blog 17:56Z, github-changelog 23:17Z, golang Oct 2, hf-blog 17:05Z, jetbrains 19:59Z, k8s Oct 6, leiphone 02:35Z, nextjs Oct 8, nodejs Oct 7, openai Oct 13, oschina 05:13Z, phoronix 00:54Z, qbitai 04:51Z, react Sep 9, rust Oct 2, solidot 15:25Z, svelte Oct 1, swillison 23:00Z, techcrunch 01:30Z, typescript stale 2026-07-08 standing oddity, verge 23:32Z, vercel-blog Oct 13, vite Jun 23, webkit Oct 8) so no late-serve gap; stale/shell serves with no in-window cost: anthropic 20608B parse-0 standing, deno 58354B shell standing, mydrivers 7160B shell standing, register 204320B shell standing, tailwind 133675B parse-0 standing; vscode future-dated 2026-10-14T17:00:00Z Insiders re-cover per the isFreshNews conventions. Window maintenance: today is 2026-10-14 UTC so the isFreshNews boundary stays today-14d = 2026-09-30 inclusive; prune already applied at 70e42d7, nothing to prune; publishedNews 243 under the current cutoff. Validation: npx tsc -b passes (exit 0); npm run build fails only with the pre-existing lint:api-content failure set, digit-normalized diff against the baseline tmp/build-oct14-h04.log shows BUILD LOGS IDENTICAL (598 non-empty log lines each, 0 diffs); npx tsx tmp/import-check-oct14-h07.mts reports 243 of 243 array entries parsed with 0 duplicate URLs (243 unique), 0 over-length titles/summaries, 0 out-of-window entries against the 2026-09-30 cutoff, 0 order violations in both the raw array and publishedNews, assertNewsCopy guard clean at module import (publishedNews 243 spanning 2026-09-30..2026-10-14, new entry at the top: Doyensec VBS-enclave 2026-10-14 05:52 above the 05:22 VS-Copilot-RCE entry); first summary draft tripped the assertNewsCopy guard at 72 code points (the 28/60 limits count code points, not my hand count), re-measured with node to 56/60 before revalidation; new title within 27/28 code points. Dedupe re-checked against HEAD immediately before commit per the 5a3ba1a/156e78f collision convention (0 matches for the new URL in HEAD's file; git fetch to origin succeeded this session with origin/main = e30f542 = HEAD, so no concurrent-session collision). Adds 1 item; dataset now 243 entries.) (https://github.com/xizhou0606/ai-interview-experience/commit/0a57251e8991e556285dce61c13abe9da95c4e20) Add Oct 14 tech news (incremental scan window 06:13-07:0x UTC Oct 14 … ... (https://github.com/xizhou0606/ai-interview-experience/commit/0a57251e8991e556285dce61c13abe9da95c4e20) 0a57251 (https://github.com/signup?return_to=https://github.com/android/ndk/issues/2260) Sign up for free to join this conversation on GitHub. Already have an account? (https://github.com/login?return_to=https://github.com/android/ndk/issues/2260) Sign in to comment Metadata Metadata Assignees No one assigned Labels (https://github.com/android/ndk/issues?q=state%3Aopen%20label%3A%22bug%22) bug Type No type Projects No projects Milestone No milestone Relationships None yet Development No branches or pull requests Issue actions () Open in GitHub Copilot app Footer (https://github.com) © 2026 GitHub, Inc. Footer navigation (https://docs.github.com/site-policy/github-terms/github-terms-of-service) Terms (https://docs.github.com/site-policy/privacy-policies/github-privacy-statement) Privacy (https://github.com/security) Security (https://www.githubstatus.com/) Status (https://github.community/) Community (https://docs.github.com/) Docs (https://support.github.com?tags=dotcom-footer) Contact Manage cookies Do not share my personal information You can’t perform that action at this time.