2010-12-17 36 views
12

Kısa bir süre önce uygulamanızın çökmekte olduğu bir kullanıcıdan şikayet aldım. Ben Kullanıcının hata günlüklerinden aşağıdaki çıkarılan ve olay nerede niçin sorunları görmek başardı ettik:"yığın bozulması tespit edildi: iptal edildi" nedeniyle kilitlenme

12-17 10:31:12.446 I/PLAYLIST(3158): PreparePlaylist 
12-17 10:31:12.446 I/PLAYLIST(3158): URL: http://f69cbd7a-3d91-4bf5-b4c6-ddb1175cf9e9.d40f2093-2013-4ad9-aec2-e99b015d61ca.070305e7-a706-4626-9ecb-777835065841.groovera.com/listen.pls 
12-17 10:31:12.456 F/unknown (3158): stack corruption detected: aborted 
12-17 10:31:12.466 D/Zygote (2204): Process 3158 terminated by signal (6) 
12-17 10:31:12.471 I/ActivityManager(2256): Process com.android.Player:remote (pid 3158) has died. 

tespit edilen bir yığın yolsuzluk vardı. Harika, neden bunun olduğunu nasıl anlarım?

Sanırım, bu sınıfta konu ölüyor, çünkü ölmeden önce daha fazla günlük çıkışı bekliyordum. Bu sınıf, oynatma listesini indirmek ve ayrıştırmak için yuva kullanır. Yığını nasıl bozabilirim? C/C++ 'da yığın taşmasıyla uğraştım, ancak Java'da nasıl kullanacağım?

Yardımlarınız için teşekkürler!

+0

Kodunuz URL'leri okuyorsa, burada [bazı öneriler] (http://comments.gmane.org/gmane.comp.handhelds.android.devel/91510). – khachik

+0

ana bilgisayar adı oldukça uzun görünüyor – bigstones

+1

FQDN'ler için 253 karakter sınırının altında. – Blrfl

cevap

8

Bu mesaj, yerel yığının bozulmasını gösterir. Gcc bayrağı "-fstack-protector" kullanıldığında yığın arabellek taşmaları saptamak için kod eklenir.

Uygulamanızın herhangi bir JNI kodu yoksa, bu durum Android platformunda bir hata olabilir.

Bunu yeniden üretmenin bir yolu varsa, lütfen ayrıntılarla birlikte b.android.com adresinden bir hata yapın.

+0

Teşekkürler Evet JNI kodu yok. Saf java ... Sorun üretemiyorum ama uygulamamın kullanıcısı her seferinde öyle görünüyor ki ... – Jona

İlgili konular