Dodatek C - Jak zgłaszać błędy

Jak zgłaszać błędy ?

Po pierwsze przeczytaj Dodatek D, i inne dokumenty. Jeżeli twój problem nie jest znany lub nie rozwiązują go nasze instrukcje, wtedy zgłoś błąd:

Gdzie ?

Zapisz się na listę użytkowników mplayera:
    http://mplayerhq.hu/mailman/listinfo/mplayer-users
i wyślij swój raport do:
    mplayer-users@mplayerhq.hu
Nie odpiszemy bezpośrednio więc pamiętaj, aby zasubskrybować listę!!!

Nie wysyłaj raportów o błędach prywatnie, bezpośrednio na adres autora!!! Pracujemy wspólnie nad kodem, więc wszyscy są zainteresowani. Swoją drogą, często inni użytkownicy znają rozwiązanie (problemy z konfiguracją systemu, złe sterowniki itd.), nawet kiedy my myślimy, że to błąd w kodzie. Językiem tej listy jest ANGIELSKI!

Opisz swój problem ze szczegółami i nie zapomnij dołączyć tego:

Czego ?

1.Informacja o systemie, jaką chcemy znać:

2. Sprzęt i sterowniki:

Przy problemach i błędach kompilacji

3. te pliki:

Przy problemach z odgrywaniem:

3. Wyjście mplayera przy poziomie 1 komunikatów (-v)

    mplayer -v [opcje] nazwa_pliku &> mplayer.log

4. Jeżeli problem jest specyficzny dla jednego lub kilku plików, prześlij te pliki na adres:

   ftp://mplayerhq.hu/MPlayer/incoming/

Nagraj również mały plik tekstowy .txt z tą samą nazwą co właściwy plik, zawierający opis twojego problemu!
Zwykle pierwsze 1-5 MB wystarczy do przekazania problemu, ale najpierw powinieneś sprawdzić to:

   dd if=twój_plik of=mały_plik bs=1k count=1024

(spowoduje to odcięcie 1MB z 'twój_plik' i zapisanie tego jako 'mały_plik') Spróbuj jeszcze raz na tym małym pliku i jeśli problem ponownie wystąpi, to wystarczy wysłać mały plik.
NIGDY nie wysyłaj takich plików e-mailem! Załaduj to przez ftp, a na listę wyślij tylko ścieżkę/nazwę pliku. Jeżeli plik jest dostępny przez sieć, to wystarczy wysłać _dokładny_ URL do niego.

5. :W przypadku przerwań w działaniu programu ( segfault, SIGILL, sygnał 4 itd.):

Jeżeli masz coredump po tym zdarzeniu, patrz 5.a, jeśli nie patrz 5.b:

5.a: Zapisz i wyślij nam coredump (jeżeli został stworzony).

Jak to zrobić: Utwórz następujący skrypt:

disass $eip-32 $eip+32
printf "eax=%08lX\n",$eax
printf "ebx=%08lX\n",$ebx
printf "ecx=%08lX\n",$ecx
printf "edx=%08lX\n",$edx
printf "esp=%08lX\n",$esp
printf "ebp=%08lX\n",$ebp
printf "edi=%08lX\n",$edi
printf "esi=%08lX\n",$esi

Później po prostu wykonaj następujące polecenie:

    gdb mplayer --core=core -batch --command=command_file >mplayer.bug

5.b.: Uruchom MPlayera w gdb:

Przekompiluj mplayera z włączeniem opcji debugowania kodu:
./configure --enable-debug
make

[w shellu roota/użytkownika:]
    # gdb mplayer
[w gdb:]
    > run -v [opcje-mplayera] nazwa_pliku
... (czekaj aż się przerwie)
    > bt
    > disass $eip-32 $eip+32
I wyślij nam wyjście z tego co powyższe!

Ogólnie:

Jeśli coś jest duże (logi itd.), wtedy lepiej załadować to (zgzipowane) przez ftp oraz dołączyć jedynie ścieżkę/nazwę pliku w raporcie!

Wiem co robię...

Jeśli stworzyłeś właściwy raport o błędzie, postępując zgodnie z podanymi wskazówkami oraz jesteś pewien, że to błąd mplayera, nie kompilatora czy zepsutego pliku, przeczytałeś dokumentację i nadal nie znalazłeś rozwiązania, a twoje sterowniki kart dźwiękowej są w porządku, wówczas możesz zasubskrybować listę dyskusyjną mplayer-advusers i wysłać swój raport, aby dostać szybszą i lepszą odpowiedź. Ale strzeż się: jeśli wyślesz pytanie w stylu początkującego użytkownika bądź w typie rtfm, natychmiast zostaniesz zbanowany, nawet nie uzyskując często odpowiedzi na swoje pytania. A więc nie drażnij nas, zasubskrybuj -advusers tylko, jeśli naprawdę wiesz, co robisz i czujesz, że jesteś już zaawansowanym użytkownikiem lub developerem mplayera (a propos tego, jak subskrybować: dowiedz się sam! jeśli jesteś naprawdę zaawansowanym użytkownikiem, nie powinno to być dla ciebie problemem ...).