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
954866c0
Commit
954866c0
authored
Jun 14, 2007
by
Laurent Aimar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed segfault with subtitle.
parent
ec07da1d
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
9 deletions
+13
-9
src/input/decoder.c
src/input/decoder.c
+13
-9
No files found.
src/input/decoder.c
View file @
954866c0
...
...
@@ -575,6 +575,7 @@ static void DecoderDecodeVideo( decoder_t *p_dec, block_t *p_block )
*/
static
int
DecoderDecode
(
decoder_t
*
p_dec
,
block_t
*
p_block
)
{
decoder_owner_sys_t
*
p_sys
=
(
decoder_owner_sys_t
*
)
p_dec
->
p_owner
;
const
int
i_rate
=
p_block
?
p_block
->
i_rate
:
INPUT_RATE_DEFAULT
;
if
(
p_block
&&
p_block
->
i_buffer
<=
0
)
...
...
@@ -736,19 +737,22 @@ static int DecoderDecode( decoder_t *p_dec, block_t *p_block )
stats_UpdateInteger
(
p_dec
,
p_input
->
p
->
counters
.
p_decoded_sub
,
1
,
NULL
);
vlc_mutex_unlock
(
&
p_input
->
p
->
counters
.
counters_lock
);
if
(
p_spu
->
i_start
<
p_dec
->
p_owner
->
i_preroll_end
&&
(
p_spu
->
i_stop
<=
0
||
p_spu
->
i_stop
<=
p_dec
->
p_owner
->
i_preroll_end
)
)
p_vout
=
vlc_object_find
(
p_dec
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
if
(
p_vout
&&
p_sys
->
p_spu_vout
==
p_vout
)
{
spu_DestroySubpicture
(
p_dec
->
p_owner
->
p_vout
->
p_spu
,
p_spu
);
continue
;
/* Prerool does not work very well with subtitle */
if
(
p_spu
->
i_start
<
p_dec
->
p_owner
->
i_preroll_end
&&
(
p_spu
->
i_stop
<=
0
||
p_spu
->
i_stop
<
p_dec
->
p_owner
->
i_preroll_end
)
)
spu_DestroySubpicture
(
p_vout
->
p_spu
,
p_spu
);
else
spu_DisplaySubpicture
(
p_vout
->
p_spu
,
p_spu
);
}
p_vout
=
vlc_object_find
(
p_dec
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
if
(
p_vout
)
else
{
spu_DisplaySubpicture
(
p_vout
->
p_spu
,
p_spu
);
vlc_object_release
(
p_vout
);
msg_Warn
(
p_dec
,
"no vout found, leaking subpicture"
);
}
if
(
p_vout
)
vlc_object_release
(
p_vout
);
}
}
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