Tüm Haberler / Yazılım & Mühendislik

AOSP Kaynak Sürümleri O Kadar Geç Geliyor Geliştiriciler Hataları Bildirmek İçin Kitaplıkları Parçalıyor

Kaynak: Hacker News Frontpage
4 dk okuma
10 okunma
AOSP Kaynak Sürümleri O Kadar Geç Geliyor Geliştiriciler Hataları Bildirmek İçin Kitaplıkları Parçalıyor

Öne Çıkan Gelişmeler & Kritik Noktalar

  • 📌 Eylül 2026'dan itibaren Android 17 sürümlerinde, reddetme kümesinde tümü < U+0100 olan iki veya daha fazla karakter olduğunda wcscspn() ve wcspbrk(), >= U+0100...
  • 🚀 ASCII sınırlayıcıları için geniş dizeleri tarayan herhangi bir kod, örneğin yeni satır veya joker karakterler, metin bir emoji, CJK, Kiril, Yunanca veya Latin G...
  • 💡 Genel android17 sürümü kaynakları (android-17.0.0_r1, Haziran 2026), wcscspn/wcspbrk'yi harici/llvm-libc'den oluşturur; bu, wchar_t üzerinde düz iç içe geçmiş b...
  • ⚙️ Bu gelişme Yazılım & Mühendislik dikeyinde teknik altyapı, regülasyonlar ve pazar dengeleri açısından stratejik bir dönüm noktası oluşturuyor.

Eylül 2026'dan itibaren Android 17 sürümlerinde, reddetme kümesinde tümü < U+0100 olan iki veya daha fazla karakter olduğunda wcscspn() ve wcspbrk(), >= U+0100 olan dizenin ilk karakterinde durur. Karakter sette olmasa da eşleşme olarak rapor ediliyor. wcsspn(), wcschr(), wcsrchr(), wmemchr() ve wcsstr() doğrudur.

Gelişmenin Ayrıntıları ve Kapsamı

ASCII sınırlayıcıları için geniş dizeleri tarayan herhangi bir kod, örneğin yeni satır veya joker karakterler, metin bir emoji, CJK, Kiril, Yunanca veya Latin Genişletilmiş karakter içerdiği anda bozulur.

Genel android17 sürümü kaynakları (android-17.0.0_r1, Haziran 2026), wcscspn/wcspbrk'yi harici/llvm-libc'den oluşturur; bu, wchar_t üzerinde düz iç içe geçmiş bir döngüdür ve doğrudur. Eylül sürümlerindeki kod farklıdır (bkz. "Mekanizma"), dolayısıyla regresyon Haziran ve Eylül sürümleri arasında uygulamaya konmuştur.

“Teknoloji ekosisteminde ölçeklenebilirlik ve otomasyon süreçleri, kullanıcı deneyimi ile doğrudan birleştiğinde katma değer üretiyor.”

NDK (aarch64-linux-android30-clang) ile oluşturun, /data/local/tmp'ye basın, adb kabuğuyla çalıştırın:

U+0001'den U+10FFFF'ye (vekiller ve iki küme üyesi atlanarak) her kod noktasının wcscspn(L"<cp>\n", L"x\n") ile taranması, 1.111.808 kod noktası için 1 yerine 0 döndürür: U+0100'den U+10FFFF'ye kadar her biri. U+0001 ile U+00FF arası doğrudur.

Hangi set şekilleri onu tetikler (hepsi Pixel 8a'da ölçülmüştür):

Disassembly of wcscspn in /apex/com.android.runtime/lib64/bionic/libc.so on CP3A.260905.009 shows three paths selected by the set:

>= 0x100 olan bir karakter, üyelerinin tümü < 0x100 olan bir kümede olamaz; dolayısıyla wcscspn için taramanın bu karakterden sonra devam etmesi gerekir. Bunun yerine kod durur. wcsspn de aynı yapıya sahiptir ve orada durmak doğru cevaptır (karakter muhafaza setinde değildir), bu yüzden sadece tamamlayıcı fonksiyonlar yanlıştır. wcspbrk bu taramanın üzerine uygulanır ve hatayı devralır.

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.

Android'deki Visual Pinball (libwinevbs, Wine'ın vbscript motorunun bir Unix yapısı), Eylül güncellemesinden sonra VBScript kaynağı emojili bir yorum içeren herhangi bir tablonun yüklenmesini durdurdu: lexer, yorumları atlamak için wcspbrk(ptr, L"\n\r") kullanıyor, satır sonu yerine ilk emojinin konumunu alıyor ve "Geçersiz karakter" bildirdi. FileSystem.MoveFolder aynı şekilde >= U+0100 karakterini içeren her yola wcspbrk(src, L"*?><") aracılığıyla joker karakter deseni olarak davrandı.

Recep Usta OS — Sistem & Mühendislik Değerlendirmesi

Altyapı ve Verimlilik Perspektifi: AOSP Kaynak Sürümleri O Kadar Geç Geliyor Geliştiriciler Hataları Bildirmek İçin Kitaplıkları Parçalıyor haberi incelendiğinde; kurumsal dijitalleşme ve otomasyon süreçlerinin modern yazılım mimarileriyle nasıl güçlendirildiği açıkça görülüyor. Ağ güvenliği, yüksek erişilebilirlik ve mikroservis tabanlı veri senkronizasyonu bu tarz operasyonlarda başarının anahtarıdır.

Kullanıcı odaklı dijital çözümlerin güvenli altyapılarla desteklenmesi, hem yerel pazarda hem de uluslararası genişlemede sistem sürdürülebilirliğini sağlamlaştırmaktadır.

Bu haber Hacker News Frontpage bülteninden derlenmiş ve recepusta.com editoryal analiziyle zenginleştirilmiştir.
Orijinal Kaynak Referansı