Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
76e67e8c
Commit
76e67e8c
authored
Apr 29, 2004
by
Gildas Bazin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
* modules/demux/avi/avi.c: Fixed infinite loop in the AVI demux on broken/incomplete files
parent
6f2c07b9
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
16 additions
and
0 deletions
+16
-0
NEWS
NEWS
+1
-0
modules/demux/avi/avi.c
modules/demux/avi/avi.c
+15
-0
No files found.
NEWS
View file @
76e67e8c
...
@@ -29,6 +29,7 @@ Input:
...
@@ -29,6 +29,7 @@ Input:
Demux:
Demux:
* Annodex (http://www.annodex.net) support.
* Annodex (http://www.annodex.net) support.
* mmsh streaming fixes.
* mmsh streaming fixes.
* Fixed infinite loop in the AVI demux on broken/incomplete files.
Subtitles:
Subtitles:
* Subviewer and subviewer v2 subtitles support.
* Subviewer and subviewer v2 subtitles support.
...
...
modules/demux/avi/avi.c
View file @
76e67e8c
...
@@ -693,6 +693,8 @@ static int Demux_Seekable( demux_t *p_demux )
...
@@ -693,6 +693,8 @@ static int Demux_Seekable( demux_t *p_demux )
if
(
i_pos
==
-
1
)
if
(
i_pos
==
-
1
)
{
{
int
i_loop_count
=
0
;
/* no valid index, we will parse directly the stream
/* no valid index, we will parse directly the stream
* in case we fail we will disable all finished stream */
* in case we fail we will disable all finished stream */
if
(
p_sys
->
i_movi_lastchunk_pos
>=
p_sys
->
i_movi_begin
+
12
)
if
(
p_sys
->
i_movi_lastchunk_pos
>=
p_sys
->
i_movi_begin
+
12
)
...
@@ -727,6 +729,19 @@ static int Demux_Seekable( demux_t *p_demux )
...
@@ -727,6 +729,19 @@ static int Demux_Seekable( demux_t *p_demux )
"cannot skip packet, track disabled"
);
"cannot skip packet, track disabled"
);
return
(
AVI_TrackStopFinishedStreams
(
p_demux
)
?
0
:
1
);
return
(
AVI_TrackStopFinishedStreams
(
p_demux
)
?
0
:
1
);
}
}
/* Prevents from eating all the CPU with broken files.
* This value should be low enough so that it doesn't
* affect the reading speed too much. */
if
(
!
(
++
i_loop_count
%
1024
)
)
{
if
(
p_demux
->
b_die
)
return
-
1
;
msleep
(
10000
);
if
(
!
(
i_loop_count
%
(
1024
*
10
))
)
msg_Warn
(
p_demux
,
"doesn't seem to find any data..."
);
}
continue
;
continue
;
}
}
else
else
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment