summaryrefslogtreecommitdiff
path: root/src/xine-engine/xine.c
diff options
context:
space:
mode:
authoruid86226 <none@none>2004-02-16 20:19:09 +0000
committeruid86226 <none@none>2004-02-16 20:19:09 +0000
commit5807b51c46b31abe0fecedb8f1a783f2bd74a18d (patch)
treedb5924af7c3bf12972a2e99854a76b8914d1fb99 /src/xine-engine/xine.c
parent76b4bde43bb287a9b4cbfe92b4af5e1dd40ee311 (diff)
downloadxine-lib-5807b51c46b31abe0fecedb8f1a783f2bd74a18d.tar.gz
xine-lib-5807b51c46b31abe0fecedb8f1a783f2bd74a18d.tar.bz2
fix freezes with input plugins that play with the speed:
* use _x_set_speed() for speed manipulations, since it is ticket-safe * _x_set_speed() is an internal helper function now, move frontend locking outside of it * restrict access to metronom clock internal stuff CVS patchset: 6165 CVS date: 2004/02/16 20:19:09
Diffstat (limited to 'src/xine-engine/xine.c')
-rw-r--r--src/xine-engine/xine.c7
1 files changed, 2 insertions, 5 deletions
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c
index 9564c8d25..282cc2db3 100644
--- a/src/xine-engine/xine.c
+++ b/src/xine-engine/xine.c
@@ -17,7 +17,7 @@
* along with this program; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
*
- * $Id: xine.c,v 1.282 2004/02/15 20:31:23 mroi Exp $
+ * $Id: xine.c,v 1.283 2004/02/16 20:19:10 uid86226 Exp $
*/
/*
@@ -54,6 +54,7 @@
#define XINE_ENABLE_EXPERIMENTAL_FEATURES
#define XINE_ENGINE_INTERNAL
+#define METRONOM_CLOCK_INTERNAL
#include "xine_internal.h"
#include "plugin_catalog.h"
@@ -1539,8 +1540,6 @@ int xine_get_status (xine_stream_t *stream) {
void _x_set_speed (xine_stream_t *stream, int speed) {
- pthread_mutex_lock (&stream->frontend_lock);
-
if (speed <= XINE_SPEED_PAUSE)
speed = XINE_SPEED_PAUSE;
else if (speed > XINE_SPEED_FAST_4)
@@ -1551,8 +1550,6 @@ void _x_set_speed (xine_stream_t *stream, int speed) {
if (stream->slave && (stream->slave_affection & XINE_MASTER_SLAVE_SPEED))
__set_speed_internal (stream->slave, speed);
-
- pthread_mutex_unlock (&stream->frontend_lock);
}