diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/xine-engine/xine.c | 36 | ||||
-rw-r--r-- | src/xine-engine/xine_internal.h | 4 |
2 files changed, 22 insertions, 18 deletions
diff --git a/src/xine-engine/xine.c b/src/xine-engine/xine.c index 8ff6006f0..cc940ea26 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.230 2003/02/14 00:35:30 miguelfreitas Exp $ + * $Id: xine.c,v 1.231 2003/02/22 14:18:55 mroi Exp $ * * top-level xine functions * @@ -93,23 +93,25 @@ void extra_info_reset( extra_info_t *extra_info ) { void extra_info_merge( extra_info_t *dst, extra_info_t *src ) { - if( src->input_pos ) - dst->input_pos = src->input_pos; - - if( src->input_length ) - dst->input_length = src->input_length; - - if( src->input_time ) - dst->input_time = src->input_time; - - if( src->frame_number ) - dst->frame_number = src->frame_number; - - if( src->seek_count ) - dst->seek_count = src->seek_count; + if (!src->invalid) { + if( src->input_pos ) + dst->input_pos = src->input_pos; + + if( src->input_length ) + dst->input_length = src->input_length; - if( src->vpts ) - dst->vpts = src->vpts; + if( src->input_time ) + dst->input_time = src->input_time; + + if( src->frame_number ) + dst->frame_number = src->frame_number; + + if( src->seek_count ) + dst->seek_count = src->seek_count; + + if( src->vpts ) + dst->vpts = src->vpts; + } } static void xine_set_speed_internal (xine_stream_t *stream, int speed) { diff --git a/src/xine-engine/xine_internal.h b/src/xine-engine/xine_internal.h index b4c786c1c..10ce3a700 100644 --- a/src/xine-engine/xine_internal.h +++ b/src/xine-engine/xine_internal.h @@ -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_internal.h,v 1.127 2003/02/14 00:35:30 miguelfreitas Exp $ + * $Id: xine_internal.h,v 1.128 2003/02/22 14:18:55 mroi Exp $ * */ @@ -129,6 +129,8 @@ struct extra_info_s { int seek_count; /* internal engine use */ int64_t vpts; /* set on output layers only */ + + int invalid; /* do not use this extra info to update anything */ }; /* |