[vlc-devel] [PATCH 1/2] http: add vlc_http_cookies_clear

Thomas Guillem thomas at gllm.fr
Fri Sep 16 15:51:10 CEST 2016


Clear all cookies without deleting the jar.
---
 include/vlc_http.h     |  1 +
 src/libvlccore.sym     |  1 +
 src/misc/httpcookies.c | 10 ++++++----
 3 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/include/vlc_http.h b/include/vlc_http.h
index ed7e161..da1fe4e 100644
--- a/include/vlc_http.h
+++ b/include/vlc_http.h
@@ -71,6 +71,7 @@ VLC_API char *vlc_http_auth_FormatAuthorizationHeader
 typedef struct vlc_http_cookie_jar_t vlc_http_cookie_jar_t;
 
 VLC_API vlc_http_cookie_jar_t * vlc_http_cookies_new( void ) VLC_USED;
+VLC_API void vlc_http_cookies_clear( vlc_http_cookie_jar_t * p_jar );
 VLC_API void vlc_http_cookies_destroy( vlc_http_cookie_jar_t * p_jar );
 
 /**
diff --git a/src/libvlccore.sym b/src/libvlccore.sym
index 5a7de9e..bbf6ff8 100644
--- a/src/libvlccore.sym
+++ b/src/libvlccore.sym
@@ -137,6 +137,7 @@ vlc_http_auth_ParseAuthenticationInfoHeader
 vlc_http_auth_FormatAuthorizationHeader
 vlc_http_cookies_new
 vlc_http_cookies_destroy
+vlc_http_cookies_clear
 vlc_http_cookies_store
 vlc_http_cookies_fetch
 httpd_ClientIP
diff --git a/src/misc/httpcookies.c b/src/misc/httpcookies.c
index b6d174b..2090f69 100644
--- a/src/misc/httpcookies.c
+++ b/src/misc/httpcookies.c
@@ -281,18 +281,20 @@ vlc_http_cookie_jar_t * vlc_http_cookies_new(void)
     return jar;
 }
 
-void vlc_http_cookies_destroy( vlc_http_cookie_jar_t * p_jar )
+void vlc_http_cookies_clear( vlc_http_cookie_jar_t * p_jar )
 {
     if ( !p_jar )
         return;
 
-    int i;
-    for( i = 0; i < vlc_array_count( &p_jar->cookies ); i++ )
+    for( int i = 0; i < vlc_array_count( &p_jar->cookies ); i++ )
         cookie_destroy( vlc_array_item_at_index( &p_jar->cookies, i ) );
 
     vlc_array_clear( &p_jar->cookies );
-    vlc_mutex_destroy( &p_jar->lock );
+}
 
+void vlc_http_cookies_destroy( vlc_http_cookie_jar_t * p_jar )
+{
+    vlc_http_cookies_clear( p_jar );
     free( p_jar );
 }
 
-- 
2.9.3



More information about the vlc-devel mailing list