Devlog · Dosya Dolabı

Dosya Dolabı 1.1.2: önizleme artık takılmıyor

1.1.2, Gelen Kutusu'ndaki bozuk ya da kötü niyetli bir belgenin önizlemeyi dakikalarca kilitlemesinin üç yolunu kapatıyor. 1.1.1'in üstüne doğrudan kuruluyor.

Dosya Dolabı 1.1.2, 1.1.1’deki zip bombası düzeltmesinin devamı. Gelen Kutusu belgeleri sen dokunmadan önizlediği için, önizlemenin bir dosyaya takılması uygulamanın donması demek. 1.1.1 bellek tarafını kapatmıştı. Bu sürüm, bellek yerine zamanı tüketen yolları kapatıyor.

Neler düzeldi?

  • Zip dizini önce biz okuyoruz. .docx ve .pptx aslında birer zip dosyası. Önizleme dosyayı açmadan önce içindeki dizine bakıyor: kayıt sayısı, dizin boyutu ya da ad alanları makul sınırı aşıyorsa önizleme yapılmıyor, kartta tür simgesi görünüyor.
  • Metin çıkarma doğrusal. Belgenin metni eskiden düzenli ifadelerle aranıyordu. Özel hazırlanmış bir belgede bu arama dosya boyutuyla orantısız uzuyordu: yeni testlerde eski kod 55 saniye ve 150 saniyeden fazla takıldı. Yeni tarayıcının süresi dosya boyutuyla doğrusal artıyor.
  • Sembolik bağlantı girdileri reddediliyor. Kullandığımız zip kütüphanesi bu tür girdileri sınırsız açıyordu; artık önizlemeye hiç alınmıyorlar.

110 otomatik test geçiyor. Değişen kod yayından önce güvenlik açısından incelenip kayda geçti.

1.1.1’den beri APK’lar aynı kalıcı anahtarla imzalanıyor, bu yüzden bu sefer kaldırıp kurmak gerekmiyor: yeni APK eskisinin üstüne kuruluyor.

İndir: GitHub’daki v1.1.2 sürümü.

← Tüm kayıtlar