Android 17のbionicに深刻なバグ、絵文字入り文字列でワイド文字関数が誤動作

AOSP Source Releases Are So Late Developers Disassemble Libraries to Report Bugs

Android 17の9月ビルドで、bionicのwcscspn()とwcspbrk()がU+0100以上の文字を誤って一致と判定するバグが発見された。拒否セットがすべてU+0100未満の2文字以上の場合に発生し、絵文字やCJK文字を含む文字列でASCII区切り文字のスキャンが破綻する。公開ソースは6月版で正常なため、6月から9月の間に混入した回帰。Visual Pinball on Androidなど実害も報告されている。

wcscspn(s, L"x\n") = 1 (expected 4)
  1. kodebach

    証明はできないけど、これって(部分的には)最近のEU規制が大失敗した結果なんじゃないかとまだ思ってる。

    どの規制だったかは覚えてないけど、最近の規制の一つに、デバイスがある期間アップデートを受けられるように義務付けるものがある。その期間内では、メーカーはすべてのデバイスに対して各アップデートを短期間で提供しなければならない。意図としては、フラッグシップはすぐアップデートが来るのに、ローエンドデバイスは何ヶ月も待たされる、というのを防ぐことだった。

    でも、オープンソースに関する(これも善意からの)文言のせいで、ソースコードのリリースがアップデートの最初のリリースとみなされ、タイマーが始まってしまう。

    GoogleがAOSPの公開アップデートを遅らせているのは、パートナー(主にSamsungだろうけど)がAOSPの上に自社アップデートを構築し終える時間を稼ぐためだと確信してる。

  2. userbinator

    1文字:単純な比較ループ。その通り。

    驚くことではないけど、テキストにClaudismの気配を少し感じる。

    AIがソフトウェアのソースを「オープン」にすることは、今のところAIの最も良い点の一つだと思う。

  3. reddalo

    Googleの新しいモットーは「できる限り邪悪であれ」らしい。

    ユーザーの自由を尊重する、Androidの代替が必要だ。

  4. evan_a_a

    ちょっと誇張したタイトルだね。バグレポートの核心部分は、ライブラリの逆アセンブルを必要としない。バグの著者は、当然ながら軽いリバース作業が必要な根本原因調査まで踏み込んだだけだ。

  5. dethos

    第三の選択肢が必要だ。SalfishOS、Ubuntu Touch、Nura、あるいは十分なコミュニティを獲得した何かであれ。とにかく、それに開発と投資を始める必要がある。完璧ではないだろうが、ユーザーに代替手段とコントロールを提供してくれる。

  6. Retr0id

    これがきっかけで誰かがAIによるAOSPの逆コンパイルをやったら、ちょっと面白いだろうね。

  7. senfiaj

    AIはバイナリの逆コンパイルに成功し始めている。バイナリが意図的に難読化されていない限り、ほぼ「オープンソース」と言っていいんじゃないかな。

  8. duttonw

    Googleが公開しないことは、AI時代の今となってはもう助けにならないよ……

この日のほかの記事

2026-10-14