core: extend libvlc_MetaRequest and rename it
authorThomas Guillem <thomas@gllm.fr>
Wed, 1 Jun 2016 09:59:09 +0000 (11:59 +0200)
committerThomas Guillem <thomas@gllm.fr>
Sun, 5 Jun 2016 10:57:17 +0000 (12:57 +0200)
This function can now pass a timeout and an unique id that can be used to
cancel requests pushed with this id.

Rename it because Meta is too meta.

include/vlc_input_item.h
lib/media.c
modules/gui/macosx/VLCPlaylist.m
modules/gui/macosx/VLCPlaylistInfo.m
src/input/input.c
src/libvlc.c
src/libvlccore.sym

index f16491d..50501bf 100644 (file)
@@ -399,8 +399,9 @@ enum input_item_preparse_status
     ITEM_PREPARSE_DONE
 };
 
-VLC_API int libvlc_MetaRequest(libvlc_int_t *, input_item_t *,
-                               input_item_meta_request_option_t );
+VLC_API int libvlc_MetadataRequest( libvlc_int_t *, input_item_t *,
+                                    input_item_meta_request_option_t,
+                                    int, void * );
 VLC_API int libvlc_ArtRequest(libvlc_int_t *, input_item_t *,
                               input_item_meta_request_option_t );
 
index 1f7acae..991a306 100644 (file)
@@ -764,7 +764,7 @@ static int media_parse(libvlc_media_t *media, bool b_async,
             parse_scope |= META_REQUEST_OPTION_SCOPE_NETWORK;
         if (parse_flag & libvlc_media_do_interact)
             parse_scope |= META_REQUEST_OPTION_DO_INTERACT;
-        ret = libvlc_MetaRequest(libvlc, item, parse_scope);
+        ret = libvlc_MetadataRequest(libvlc, item, parse_scope, 0, NULL);
         if (ret != VLC_SUCCESS)
             return ret;
     }
index ac133b2..1269fe6 100644 (file)
             continue;
         }
 
-        libvlc_MetaRequest(p_intf->p_libvlc, [o_item input], META_REQUEST_OPTION_NONE);
+        libvlc_MetadataRequest(p_intf->p_libvlc, [o_item input], META_REQUEST_OPTION_NONE, -1, NULL);
 
     }
     [self playlistUpdated];
index 1830769..871ca52 100644 (file)
         [_imageWell setImage: [NSImage imageNamed: @"noart.png"]];
     } else {
         if (!input_item_IsPreparsed(p_item))
-            libvlc_MetaRequest(getIntf()->p_libvlc, p_item, META_REQUEST_OPTION_NONE);
+            libvlc_MetadataRequest(getIntf()->p_libvlc, p_item, META_REQUEST_OPTION_NONE, -1, NULL);
 
         /* fill uri info */
         char *psz_url = vlc_uri_decode(input_item_GetURI(p_item));
index 5307203..7d2feb3 100644 (file)
@@ -365,7 +365,7 @@ static input_thread_t *Create( vlc_object_t *p_parent, input_item_t *p_item,
     else if( p_item->b_preparse_interact )
     {
         /* If true, this item was asked explicitly to interact with the user
-         * (via libvlc_MetaRequest). Sub items created from this input won't
+         * (via libvlc_MetadataRequest). Sub items created from this input won't
          * have this flag and won't interact with the user */
         p_input->i_flags &= ~OBJECT_FLAGS_NOINTERACT;
     }
index 316f481..49e46ae 100644 (file)
@@ -613,8 +613,9 @@ static void GetFilenames( libvlc_int_t *p_vlc, unsigned n,
  * Requests extraction of the meta data for an input item (a.k.a. preparsing).
  * The actual extraction is asynchronous.
  */
-int libvlc_MetaRequest(libvlc_int_t *libvlc, input_item_t *item,
-                       input_item_meta_request_option_t i_options)
+int libvlc_MetadataRequest(libvlc_int_t *libvlc, input_item_t *item,
+                           input_item_meta_request_option_t i_options,
+                           int timeout, void *id)
 {
     libvlc_priv_t *priv = libvlc_priv(libvlc);
 
@@ -627,7 +628,7 @@ int libvlc_MetaRequest(libvlc_int_t *libvlc, input_item_t *item,
     if( i_options & META_REQUEST_OPTION_DO_INTERACT )
         item->b_preparse_interact = true;
     vlc_mutex_unlock( &item->lock );
-    playlist_preparser_Push(priv->parser, item, i_options, -1, NULL);
+    playlist_preparser_Push( priv->parser, item, i_options, timeout, id );
     return VLC_SUCCESS;
 }
 
index 2dcb5cf..6f25db1 100644 (file)
@@ -238,7 +238,7 @@ libvlc_InternalDestroy
 libvlc_InternalInit
 libvlc_Quit
 libvlc_SetExitHandler
-libvlc_MetaRequest
+libvlc_MetadataRequest
 libvlc_ArtRequest
 vlc_UrlParse
 vlc_UrlClean