Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-1.1
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-1.1
Commits
f810fad0
Commit
f810fad0
authored
Jan 06, 2009
by
Rémi Denis-Courmont
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Playlist thread is not cancellable as of now, no point in trying
parent
e966180e
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
7 additions
and
8 deletions
+7
-8
src/playlist/playlist_internal.h
src/playlist/playlist_internal.h
+1
-0
src/playlist/thread.c
src/playlist/thread.c
+6
-8
No files found.
src/playlist/playlist_internal.h
View file @
f810fad0
...
@@ -82,6 +82,7 @@ typedef struct playlist_private_t
...
@@ -82,6 +82,7 @@ typedef struct playlist_private_t
vlc_mutex_t
lock
;
/**< Lock to protect request */
vlc_mutex_t
lock
;
/**< Lock to protect request */
}
request
;
}
request
;
vlc_thread_t
thread
;
/**< engine thread */
vlc_cond_t
signal
;
/**< wakes up the playlist engine thread */
vlc_cond_t
signal
;
/**< wakes up the playlist engine thread */
int
i_last_playlist_id
;
/**< Last id to an item */
int
i_last_playlist_id
;
/**< Last id to an item */
...
...
src/playlist/thread.c
View file @
f810fad0
...
@@ -36,7 +36,7 @@
...
@@ -36,7 +36,7 @@
/*****************************************************************************
/*****************************************************************************
* Local prototypes
* Local prototypes
*****************************************************************************/
*****************************************************************************/
static
void
*
Thread
(
v
lc_object_t
*
);
static
void
*
Thread
(
v
oid
*
);
/*****************************************************************************
/*****************************************************************************
* Main functions for the global thread
* Main functions for the global thread
...
@@ -66,8 +66,8 @@ void playlist_Activate( playlist_t *p_playlist )
...
@@ -66,8 +66,8 @@ void playlist_Activate( playlist_t *p_playlist )
msg_Err
(
p_playlist
,
"cannot create playlist preparser"
);
msg_Err
(
p_playlist
,
"cannot create playlist preparser"
);
/* Start the playlist thread */
/* Start the playlist thread */
if
(
vlc_
thread_create
(
p_playlist
,
"playlist"
,
Thread
,
if
(
vlc_
clone
(
&
p_sys
->
thread
,
Thread
,
p_playlist
,
VLC_THREAD_PRIORITY_LOW
,
false
)
)
VLC_THREAD_PRIORITY_LOW
)
)
{
{
msg_Err
(
p_playlist
,
"cannot spawn playlist thread"
);
msg_Err
(
p_playlist
,
"cannot spawn playlist thread"
);
}
}
...
@@ -86,7 +86,7 @@ void playlist_Deactivate( playlist_t *p_playlist )
...
@@ -86,7 +86,7 @@ void playlist_Deactivate( playlist_t *p_playlist )
vlc_cond_signal
(
&
p_sys
->
signal
);
vlc_cond_signal
(
&
p_sys
->
signal
);
PL_UNLOCK
;
PL_UNLOCK
;
vlc_
thread_join
(
p_playlist
);
vlc_
join
(
p_sys
->
thread
,
NULL
);
assert
(
!
p_sys
->
p_input
);
assert
(
!
p_sys
->
p_input
);
PL_LOCK
;
PL_LOCK
;
...
@@ -579,11 +579,10 @@ static void LoopRequest( playlist_t *p_playlist )
...
@@ -579,11 +579,10 @@ static void LoopRequest( playlist_t *p_playlist )
/**
/**
* Run the main control thread itself
* Run the main control thread itself
*/
*/
static
void
*
Thread
(
v
lc_object_t
*
p_this
)
static
void
*
Thread
(
v
oid
*
data
)
{
{
playlist_t
*
p_playlist
=
(
playlist_t
*
)
p_this
;
playlist_t
*
p_playlist
=
data
;
playlist_private_t
*
p_sys
=
pl_priv
(
p_playlist
);
playlist_private_t
*
p_sys
=
pl_priv
(
p_playlist
);
int
canc
=
vlc_savecancel
();
vlc_object_lock
(
p_playlist
);
vlc_object_lock
(
p_playlist
);
while
(
vlc_object_alive
(
p_playlist
)
||
p_sys
->
p_input
)
while
(
vlc_object_alive
(
p_playlist
)
||
p_sys
->
p_input
)
...
@@ -606,7 +605,6 @@ static void *Thread ( vlc_object_t *p_this )
...
@@ -606,7 +605,6 @@ static void *Thread ( vlc_object_t *p_this )
}
}
vlc_object_unlock
(
p_playlist
);
vlc_object_unlock
(
p_playlist
);
vlc_restorecancel
(
canc
);
return
NULL
;
return
NULL
;
}
}
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