C függelék - Hogyan jelents be hibát

Hogyan küldj bugreportot?

Először is olvasd el a D fejezetet, és amit még találsz. Ha a problémád nem ismert, vagy a mi tanácsaink alapján nem oldódik meg, akkor jelentsd be:

Hol?

Iratkozz fel az mplayer-users levelezési listára:
    http://mplayerhq.hu/mailman/listinfo/mplayer-users
és küldd a bugreportot a
    mplayer-users@mplayerhq.hu
címre. Nem fogunk CC-zni, szóval légy szíves feliratkozni!!!

Ne küldj bugreportot egyenesen valamelyik készítőnek!!! Együtt dolgozunk a kódon, ezért mindenkit érdekelhet. Előfordulhat, hogy más felhasználók már tudják a megoldást (konfigurációs probléma, rossz driver stb.), még ha mi azt hinnénk is, hogy a kód bugos.

Légy szíves részletesen leírni a problémát, példákkal stb., és ne felejtsd el ezeket se mellékelni:

Mit?

1. Mindenképp küldj infót a rendszeredről:

2. Hardware & driverek:

Fordítási problémákhoz/hibákhoz:

3. ezeket a file-okat:

Lejátszási problémákhoz:

3. Az MPlayer outputot 1-es debug szinten (-v)

    mplayer -v [options] filenév &> mplayer.log

4. Ha a probléma csak egy vagy néhány file-nál jelentkezik, töltsd fel a file-t ide:

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

Tölts fel egy (azonos nevű) kis .txt fájlt, amiben leírod hogy mi a baj!
Általában az első 1-5 Mb elég, hogy reprodulkáljuk a problémát, de először probáld ki:

   dd if=a_file of=kis_file bs=1k count=1024

(ez az 'a_file' első 1 Mb-ját elmenti 'kis_file' néven') Ekkor probáld lejátszani a keletkező file-t, és ha a bug előjön, akkor elég lesz csak ennyit feltölteni.
SOHA ne küldj file-t levélben! Töltsd fel, és csak a file nevét küldd el! Ha a file a neten hozzaférhető, akkor a _pontos_ URL elküldése is elég!

5. Segfault, SIGILL, signal 4, stb esetén:

Ha keletkezett coredump, akkor lásd 5.a pont, máskülönben 5.b:

5.a. Küldd el a coredump tartalmát (ha volt).

Hogyan: Hozd létre a következő parancs file-t:

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

Aztán írd be a következőt:

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

5.b.: futtasd MPlayert gdb-n keresztül:

Fordítsd újra az MPlayer-t a hibakereső kóddal:
./configure --enable-debug
make

[a promptnál:]

    # gdb mplayer
[a gdb promptnál:]
   > run -v [mplayer opciói] filenév
... (várj amíg össze nem omlik)
    > bt
    > disass $eip-32 $eip+32
A fenti parancsok teljes kimenetét küldd el nekünk!

Általában véve:

Ha valami nagy (log-ok stb.), akkor jobb ha FTP-re töltöd (gzip-pel), és csak a file nevét írod le a bugreportban!