]> git.sesse.net Git - vlc/blobdiff - include/vlc_common.h
* stream_output.h: added a vlc_meta_t field to sout_instance_t,
[vlc] / include / vlc_common.h
index fb948b5eaf3ea239a75b1736f33435a5d3441129..1ca86bdfa81527b57b61ed069f67dfcbcc6dc8e4 100644 (file)
@@ -3,7 +3,7 @@
  * Collection of useful common types and macros definitions
  *****************************************************************************
  * Copyright (C) 1998, 1999, 2000 VideoLAN
- * $Id: vlc_common.h,v 1.108 2004/02/06 20:06:55 gbazin Exp $
+ * $Id$
  *
  * Authors: Samuel Hocevar <sam@via.ecp.fr>
  *          Vincent Seguin <seguin@via.ecp.fr>
@@ -43,6 +43,8 @@
 #   undef HAVE_STDINT_H
 #   undef HAVE_INTTYPES_H
 #   undef off_t
+#elif defined( _MSC_VER )
+#   pragma warning( disable : 4244 )
 #endif
 
 #include "vlc_config.h"
@@ -296,6 +298,24 @@ typedef struct iso639_lang_t iso639_lang_t;
 typedef struct block_t      block_t;
 typedef struct block_fifo_t block_fifo_t;
 
+/* httpd */
+typedef struct httpd_t          httpd_t;
+typedef struct httpd_host_t     httpd_host_t;
+typedef struct httpd_url_t      httpd_url_t;
+typedef struct httpd_client_t   httpd_client_t;
+typedef struct httpd_callback_sys_t httpd_callback_sys_t;
+typedef struct httpd_message_t  httpd_message_t;
+typedef int    (*httpd_callback_t)( httpd_callback_sys_t *, httpd_client_t *, httpd_message_t *answer, httpd_message_t *query );
+typedef struct httpd_file_t     httpd_file_t;
+typedef struct httpd_file_sys_t httpd_file_sys_t;
+typedef int (*httpd_file_callback_t)( httpd_file_sys_t*, httpd_file_t *, uint8_t *psz_request, uint8_t **pp_data, int *pi_data );
+typedef struct httpd_redirect_t httpd_redirect_t;
+typedef struct httpd_stream_t httpd_stream_t;
+
+/* divers */
+typedef struct vlc_meta_t vlc_meta_t;
+
+
 /*****************************************************************************
  * Variable callbacks
  *****************************************************************************/
@@ -489,12 +509,12 @@ typedef int ( * vlc_callback_t ) ( vlc_object_t *,      /* variable's object */
                          ((void**)(tab) + _i_index_+1),  \
                          ( (count) - _i_index_ - 1 ) * sizeof( void* ) );\
             }                                   \
-            else                                \
+            (count)--;                          \
+            if( (count) == 0 )                  \
             {                                   \
                 free( tab );                    \
                 (tab) = NULL;                   \
             }                                   \
-            (count)--;                          \
         }                                       \
     }
 
@@ -732,8 +752,10 @@ static inline void _SetQWLE( uint8_t *p, uint64_t i_qw )
 /* 64 bits integer constant suffix */
 #if defined( __MINGW32__ ) || (!defined(WIN32) && !defined(UNDER_CE))
 #   define I64C(x)         x##LL
+#   define UI64C(x)        x##ULL
 #else
 #   define I64C(x)         x##i64
+#   define UI64C(x)        x##ui64
 #endif /* defined(WIN32)||defined(UNDER_CE) */
 
 #if defined(WIN32) || defined(UNDER_CE)