]> git.sesse.net Git - vlc/blobdiff - modules/access/avio.c
Update LGPL license blurb, choosing v2.1+.
[vlc] / modules / access / avio.c
index aeeda4acb83035d4a68bf9f261d8c4ef13e63e84..639e2c20b74ad9aafd03ebe7c7d05205f5876cb8 100644 (file)
@@ -46,7 +46,7 @@ vlc_module_end()
  * Local prototypes
  *****************************************************************************/
 static ssize_t Read   (access_t *, uint8_t *, size_t);
-static int     Seek   (access_t *, int64_t);
+static int     Seek   (access_t *, uint64_t);
 static int     Control(access_t *, int, va_list);
 
 static int     SetupAvio(access_t *);
@@ -84,8 +84,9 @@ int OpenAvio(vlc_object_t *object)
      */
     char *url;
     if (!strcmp(access->psz_access, "avio"))
-        url = strdup(access->psz_path);
-    else if (asprintf(&url, "%s://%s", access->psz_access, access->psz_path) < 0)
+        url = strdup(access->psz_location);
+    else if (asprintf(&url, "%s://%s", access->psz_access,
+                      access->psz_location) < 0)
         url = NULL;
 
     if (!url)
@@ -101,7 +102,7 @@ int OpenAvio(vlc_object_t *object)
         goto error;
     }
     const int64_t size = url_filesize(sys->context);
-    msg_Dbg(access, "is_streamed=%d size=%lld", sys->context->is_streamed, size);
+    msg_Dbg(access, "is_streamed=%d size=%"PRIi64, sys->context->is_streamed, size);
 
     /* */
     access_InitFields(access);
@@ -149,12 +150,13 @@ static ssize_t Read(access_t *access, uint8_t *data, size_t size)
 }
 
 
-static int Seek(access_t *access, int64_t position)
+static int Seek(access_t *access, uint64_t position)
 {
     access_sys_t *sys = access->p_sys;
 
-    if (url_seek(sys->context, position, SEEK_SET) < 0) {
-        msg_Err(access, "Seek to %lld failed\n", position);
+    if (position > INT64_MAX ||
+        url_seek(sys->context, position, SEEK_SET) < 0) {
+        msg_Err(access, "Seek to %"PRIu64" failed\n", position);
         if (access->info.i_size <= 0 || position != access->info.i_size)
             return VLC_EGENERIC;
     }