summaryrefslogtreecommitdiffstats
path: root/DOCS/xml/en/bugreports.xml
blob: dbcffcb88a1c4547f786958c713dedab46eb958a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<appendix id="bugreports">
<title>How to report bugs</title>

<para>
Good bug reports are a very valuable contribution to the development of any
software project. But just like writing good software, good problem reports
involve some work. Please realize that most developers are extremely busy and
receive obscene amounts of email. So while your feedback is crucial in improving
<application>MPlayer</application> and very much appreciated, please understand
that you have to provide <emphasis role="bold">all</emphasis> of the information
we request and follow the instructions in this document closely.
</para>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_security">
<title>Report security related bugs</title>

<para>
In case you have found an exploitable bug and you would like to do the
right thing and let us fix it before you disclose it, we would be happy
to get your security advisory at
<ulink url="mailto:&#115;&#101;&#99;&#117;&#114;&#105;&#116;&#121;&#64;&#109;&#112;&#108;&#97;&#121;&#101;&#114;&#104;&#113;&#46;&#104;&#117;">&#115;&#101;&#99;&#117;&#114;&#105;&#116;&#121;&#64;&#109;&#112;&#108;&#97;&#121;&#101;&#114;&#104;&#113;&#46;&#104;&#117;</ulink>.
Please add [SECURITY] or [ADVISORY] in the subject.
Be sure that your report contains complete and detailed analysis of the bug.
Sending a fix is highly appreciated.
Please don't delay your report to write proof-of-concept exploit, you can
send that one with another mail.
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_fix">
<title>How to fix bugs</title>

<para>
OUTDATED CONTENT REMOVED
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_regression_test">
<title>How to do regression testing using Subversion</title>

<para>
OUTDATED CONTENT REMOVED
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_report">
<title>How to report bugs</title>

<para>
OUTDATED CONTENT REMOVED
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_where">
<title>Where to report bugs</title>

<para>
OUTDATED CONTENT REMOVED
</para>

<para>
The language of this list is <emphasis role="bold">English</emphasis>.
Please follow the standard
<ulink url="http://www.ietf.org/rfc/rfc1855.txt">Netiquette Guidelines</ulink>
and <emphasis role="bold">do not send HTML mail</emphasis> to any of our
mailing lists. You will only get ignored or
banned. If you do not know what HTML mail is or why it is evil, read this
<ulink url="http://efn.no/html-bad.html">fine document</ulink>.
It explains all the details and has instructions for turning HTML off. Also
note that we will not individually CC (carbon-copy) people so it is a good idea
to subscribe to actually receive your answer.
</para>
</sect1>


<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->


<sect1 id="bugreports_what">
<title>What to report</title>

<para>
OUTDATED CONTENT REMOVED
</para>

<!-- ********** -->

<sect2 id="bugreports_system">
<title>System Information</title>

<para>
OUTDATED CONTENT REMOVED
</para>
</sect2>

<!-- ********** -->

<sect2 id="bugreports_hardware">
<title>Hardware and drivers</title>

<para>
OUTDATED CONTENT REMOVED
</para>
</sect2>

<!-- ********** -->

<sect2 id="bugreports_configure">
<title>Configure problems</title>

<para>
If you get errors while running <command>./configure</command>, or autodetection
of something fails, read <filename>config.log</filename>. You may find the
answer there, for example multiple versions of the same library mixed on your
system, or you forgot to install the development package (those with the -dev
suffix). If you think there is a bug, include <filename>config.log</filename>
in your bug report.
</para>
</sect2>

<sect2 id="bugreports_compilation">
<title>Compilation problems</title>

<para>
Please include these files:
<itemizedlist>
  <listitem><para>config.h</para></listitem>
  <listitem><para>config.mak</para></listitem>
</itemizedlist>
</para>
</sect2>

<!-- ********** -->

<sect2 id="bugreports_playback">
<title>Playback problems</title>

<para>
Please include the output of <application>MPlayer</application> at verbosity
level 1, but remember to
<emphasis role="bold">not truncate the output</emphasis> when
you paste it into your mail. The developers need all of the messages to properly
diagnose a problem. You can direct the output into a file like this:
<screen>
mplayer -v <replaceable>options</replaceable> <replaceable>filename</replaceable> &gt; mplayer.log 2&gt;&amp;1
</screen>
</para>

<para>
If your problem is specific to one or more files,
then please upload the offender(s) to:
<ulink url="ftp://upload.mplayerhq.hu/MPlayer/incoming/"/>
</para>

<para>
Also upload a small text file having the same base name as your file with a .txt
extension. Describe the problem you are having with the particular file there
and include your email address as well as the output of
<application>MPlayer</application> at verbosity level 1.
Usually the first 1-5 MB of a file are enough to reproduce
the problem, but to be sure we ask you to:
<screen>
dd if=<replaceable>yourfile</replaceable> of=<replaceable>smallfile</replaceable> bs=1024k count=5
</screen>
It will take the first five megabytes of
'<emphasis role="bold">your-file</emphasis>' and write it to
'<emphasis role="bold">small-file</emphasis>'. Then try again on
this small file and if the bug still shows up your sample is sufficient for us.
Please <emphasis role="bold">do not ever</emphasis> send such files via mail!
Upload it, and send only the path/filename of the file on the FTP-server. If the
file is accessible on the net, then sending the
<emphasis role="bold">exact</emphasis> URL is sufficient.
</para>
</sect2>

<!-- ********** -->

<sect2 id="bugreports_crash">
<title>Crashes</title>

<para>
You have to run <application>MPlayer</application> inside <command>gdb</command>
and send us the complete output or if you have a <filename>core</filename> dump
of the crash you can extract useful information from the Core file. Here's how:
</para>


<sect3 id="bugreports_debug">
<title>How to conserve information about a reproducible crash</title>

<para>
Recompile <application>MPlayer</application> with debugging code enabled:
<screen>
./configure --enable-debug=3
make
</screen>
and then run <application>MPlayer</application> within gdb using:
<screen>gdb ./mplayer</screen>
You are now within gdb. Type:
<screen>
run -v <replaceable>options-to-mplayer</replaceable> <replaceable>filename</replaceable>
</screen>
and reproduce your crash. As soon as you did it, gdb will return you to the
command line prompt where you have to enter
<screen>
bt
disass $pc-32 $pc+32
info all-registers
</screen>
</para>
</sect3>


<sect3 id="bugreports_core">
<title>How to extract meaningful information from a core dump</title>

<para>
Create the following command file:
<screen>
bt
disass $pc-32 $pc+32
info all-registers
</screen>
Then simply execute this command:
<screen>
gdb mplayer --core=core -batch --command=command_file &gt; mplayer.bug
</screen>
</para>
</sect3>
</sect2>
</sect1>

</appendix>