ecore_audio: Remember previous seekable state in vio_set
authorDaniel Willmann <d.willmann@samsung.com>
Mon, 29 Apr 2013 17:23:59 +0000 (18:23 +0100)
committerDaniel Willmann <d.willmann@samsung.com>
Mon, 29 Apr 2013 18:57:16 +0000 (19:57 +0100)
Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
src/lib/ecore_audio/ecore_audio_obj_in.c
src/lib/ecore_audio/ecore_audio_private.h

index 9f80806..b85837b 100644 (file)
@@ -218,6 +218,8 @@ static void _vio_set(Eo *eo_obj, void *_pd, va_list *list)
   if (ea_obj->vio)
     _free_vio(ea_obj);
 
+  obj->seekable = obj->seekable_prev;
+
   if (!vio)
     return;
 
@@ -225,7 +227,8 @@ static void _vio_set(Eo *eo_obj, void *_pd, va_list *list)
   ea_obj->vio->vio = vio;
   ea_obj->vio->data = data;
   ea_obj->vio->free_func = free_func;
-  //FIXME: Save previous value
+
+  obj->seekable_prev = obj->seekable;
   obj->seekable = (vio->seek != NULL);
 }
 
index ee809aa..f634bea 100644 (file)
@@ -129,6 +129,7 @@ struct _Ecore_Audio_Input
 {
    Eina_Bool           paused; /**< Is the input paused? */
    Eina_Bool           seekable;
+   Eina_Bool           seekable_prev;
 
    Eo                 *output; /**< The output this input is connected to */