Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit b5c899a

Browse files
committed
ffserver: fix broken HTML on generated status page
Dropped incompatible/obsoleted HTML tag attributes Signed-off-by: Reynaldo H. Verdejo Pinochet <[email protected]>
1 parent fdb1240 commit b5c899a

2 files changed

Lines changed: 14 additions & 15 deletions

File tree

ffserver.c

Lines changed: 13 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1885,8 +1885,8 @@ static inline void print_stream_params(AVIOContext *pb, FFServerStream *stream)
18851885

18861886
stream_no = stream->nb_streams;
18871887

1888-
avio_printf(pb, "<table cellspacing=0 cellpadding=4><tr><th>Stream<th>"
1889-
"type<th>kbit/s<th align=left>codec<th align=left>"
1888+
avio_printf(pb, "<table><tr><th>Stream<th>"
1889+
"type<th>kbit/s<th>codec<th>"
18901890
"Parameters\n");
18911891

18921892
for (i = 0; i < stream_no; i++) {
@@ -1912,7 +1912,7 @@ static inline void print_stream_params(AVIOContext *pb, FFServerStream *stream)
19121912
abort();
19131913
}
19141914

1915-
avio_printf(pb, "<tr><td align=right>%d<td>%s<td align=right>%"PRId64
1915+
avio_printf(pb, "<tr><td>%d<td>%s<td>%"PRId64
19161916
"<td>%s<td>%s\n",
19171917
i, type, (int64_t)st->codecpar->bit_rate/1000,
19181918
codec ? codec->name : "", parameters);
@@ -1979,8 +1979,8 @@ static void compute_status(HTTPContext *c)
19791979
avio_printf(pb, "<h1>%s Status</h1>\n", program_name);
19801980
/* format status */
19811981
avio_printf(pb, "<h2>Available Streams</h2>\n");
1982-
avio_printf(pb, "<table cellspacing=0 cellpadding=4>\n");
1983-
avio_printf(pb, "<tr><th valign=top>Path<th align=left>Served<br>Conns<th><br>bytes<th valign=top>Format<th>Bit rate<br>kbit/s<th align=left>Video<br>kbit/s<th><br>Codec<th align=left>Audio<br>kbit/s<th><br>Codec<th align=left valign=top>Feed\n");
1982+
avio_printf(pb, "<table>\n");
1983+
avio_printf(pb, "<tr><th>Path<th>Served<br>Conns<th><br>bytes<th>Format<th>Bit rate<br>kbit/s<th>Video<br>kbit/s<th><br>Codec<th>Audio<br>kbit/s<th><br>Codec<th>Feed\n");
19841984
stream = config.first_stream;
19851985
while (stream) {
19861986
char sfilename[1024];
@@ -2014,7 +2014,7 @@ static void compute_status(HTTPContext *c)
20142014

20152015
avio_printf(pb, "<tr><td><a href=\"/%s\">%s</a> ",
20162016
sfilename, stream->filename);
2017-
avio_printf(pb, "<td align=right> %d <td align=right> ",
2017+
avio_printf(pb, "<td> %d <td> ",
20182018
stream->conns_served);
20192019
// TODO: Investigate if we can make http bitexact so it always produces the same count of bytes
20202020
if (!config.bitexact)
@@ -2058,8 +2058,7 @@ static void compute_status(HTTPContext *c)
20582058
}
20592059
}
20602060

2061-
avio_printf(pb, "<td align=center> %s <td align=right> %d "
2062-
"<td align=right> %d <td> %s %s <td align=right> "
2061+
avio_printf(pb, "<td> %s <td> %d <td> %d <td> %s %s <td> "
20632062
"%d <td> %s %s",
20642063
stream->fmt->name, stream->bandwidth,
20652064
video_bit_rate / 1000, video_codec_name,
@@ -2074,8 +2073,8 @@ static void compute_status(HTTPContext *c)
20742073
}
20752074
break;
20762075
default:
2077-
avio_printf(pb, "<td align=center> - <td align=right> - "
2078-
"<td align=right> - <td><td align=right> - <td>\n");
2076+
avio_printf(pb, "<td> - <td> - "
2077+
"<td> - <td><td> - <td>\n");
20792078
break;
20802079
}
20812080
stream = stream->next;
@@ -2158,16 +2157,16 @@ static void compute_status(HTTPContext *c)
21582157
p = inet_ntoa(c1->from_addr.sin_addr);
21592158
clean_html(c1->clean_url, sizeof(c1->clean_url), c1->url);
21602159
avio_printf(pb, "<tr><td><b>%d</b><td>%s%s<td>%s<td>%s<td>%s<td>%s"
2161-
"<td align=right>",
2160+
"<td>",
21622161
i, c1->stream ? c1->stream->filename : "",
21632162
c1->state == HTTPSTATE_RECEIVE_DATA ? "(input)" : "",
21642163
p,
21652164
c1->clean_url,
21662165
c1->protocol, http_state[c1->state]);
21672166
fmt_bytecount(pb, bitrate);
2168-
avio_printf(pb, "<td align=right>");
2167+
avio_printf(pb, "<td>");
21692168
fmt_bytecount(pb, compute_datarate(&c1->datarate, c1->data_count) * 8);
2170-
avio_printf(pb, "<td align=right>");
2169+
avio_printf(pb, "<td>");
21712170
fmt_bytecount(pb, c1->data_count);
21722171
avio_printf(pb, "\n");
21732172
c1 = c1->next;
@@ -2178,7 +2177,7 @@ static void compute_status(HTTPContext *c)
21782177
/* date */
21792178
ti = time(NULL);
21802179
p = ctime(&ti);
2181-
avio_printf(pb, "<hr size=1 noshade>Generated at %s", p);
2180+
avio_printf(pb, "<hr>Generated at %s", p);
21822181
}
21832182
avio_printf(pb, "</body>\n</html>\n");
21842183

tests/ffserver.regression.ref

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ dc16f607e13328a832e73801cd21ec98 *ff-test_h.asf
88
4c887dfc1dd0f6ea1a3a2be6dd32e495 *ff-test.jpg
99
1d04b73b04aad27793cc762d5afabac1 *ff-test_small.jpg
1010
bc36c40ee34ebee6ffe50f3094aab733 *ff-test.mjpg
11-
128530a16464be60d27d013c30401851 *ff-stat
11+
fd038af80560e15271ce42651093ee43 *ff-stat

0 commit comments

Comments
 (0)