2020#include <config.h>
2121#endif
2222
23+ #include <stdint.h>
2324#include <stdio.h>
2425#include <stdlib.h>
2526#include <string.h>
5051#define EBML_SLICE_SIZE 4096
5152
5253/* A value that no EBML var-int is allowed to take. */
53- #define EBML_UNKNOWN ((unsigned long long ) -1)
54+ #define EBML_UNKNOWN ((uint_least64_t ) -1)
5455
5556/* The magic numbers for each element we are interested in.
5657 * Defined here:
@@ -129,7 +130,7 @@ typedef struct ebml_st {
129130
130131 ebml_read_mode output_state ;
131132 ebml_parsing_state parse_state ;
132- unsigned long long copy_len ;
133+ uint_least64_t copy_len ;
133134
134135 ssize_t cluster_start ;
135136 ebml_keyframe_status cluster_starts_with_keyframe ;
@@ -146,8 +147,8 @@ typedef struct ebml_st {
146147 size_t header_read_position ;
147148 unsigned char * header ;
148149
149- unsigned long long keyframe_track_number ;
150- unsigned long long parsing_track_number ;
150+ uint_least64_t keyframe_track_number ;
151+ uint_least64_t parsing_track_number ;
151152 int parsing_track_is_video ;
152153} ebml_t ;
153154
@@ -181,15 +182,15 @@ static unsigned char *ebml_get_write_buffer(ebml_t *ebml, size_t *bytes);
181182static ssize_t ebml_wrote (ebml_t * ebml , size_t len );
182183static ssize_t ebml_parse_tag (unsigned char * buffer ,
183184 unsigned char * buffer_end ,
184- unsigned long long * payload_length );
185+ uint_least64_t * payload_length );
185186static ssize_t ebml_parse_var_int (unsigned char * buffer ,
186187 unsigned char * buffer_end ,
187- unsigned long long * out_value );
188+ uint_least64_t * out_value );
188189static ssize_t ebml_parse_sized_int (unsigned char * buffer ,
189190 unsigned char * buffer_end ,
190191 size_t len ,
191192 int is_signed ,
192- unsigned long long * out_value );
193+ uint_least64_t * out_value );
193194static inline void ebml_check_track (ebml_t * ebml );
194195
195196int format_ebml_get_plugin (source_t * source )
@@ -608,9 +609,9 @@ static ssize_t ebml_wrote(ebml_t *ebml, size_t len)
608609 ssize_t tag_length ;
609610 ssize_t value_length ;
610611 ssize_t track_number_length ;
611- unsigned long long payload_length ;
612- unsigned long long data_value ;
613- unsigned long long track_number ;
612+ uint_least64_t payload_length ;
613+ uint_least64_t data_value ;
614+ uint_least64_t track_number ;
614615 unsigned char flags ;
615616 ebml_parsing_state copy_state ;
616617
@@ -869,11 +870,11 @@ static inline void ebml_check_track(ebml_t *ebml)
869870
870871static ssize_t ebml_parse_tag (unsigned char * buffer ,
871872 unsigned char * buffer_end ,
872- unsigned long long * payload_length )
873+ uint_least64_t * payload_length )
873874{
874875 size_t type_length ;
875876 size_t size_length ;
876- unsigned long long value ;
877+ uint_least64_t value ;
877878
878879 * payload_length = 0 ;
879880
@@ -902,13 +903,13 @@ static ssize_t ebml_parse_tag(unsigned char *buffer,
902903 */
903904static ssize_t ebml_parse_var_int (unsigned char * buffer ,
904905 unsigned char * buffer_end ,
905- unsigned long long * out_value )
906+ uint_least64_t * out_value )
906907{
907908 size_t size = 1 ;
908909 size_t i ;
909910 unsigned char mask = 0x80 ;
910- unsigned long long value ;
911- unsigned long long unknown_marker ;
911+ uint_least64_t value ;
912+ uint_least64_t unknown_marker ;
912913
913914 if (buffer >= buffer_end ) {
914915 return 0 ;
@@ -966,16 +967,16 @@ static ssize_t ebml_parse_var_int(unsigned char *buffer,
966967 * value to *out_value.
967968 * If is_signed is true, then the int is assumed to be two's complement
968969 * signed, negative values will be correctly promoted, and the returned
969- * long long can be safely cast to a signed number on systems using
970+ * unsigned number can be safely cast to a signed number on systems using
970971 * two's complement arithmatic.
971972 */
972973static ssize_t ebml_parse_sized_int (unsigned char * buffer ,
973974 unsigned char * buffer_end ,
974975 size_t len ,
975976 int is_signed ,
976- unsigned long long * out_value )
977+ uint_least64_t * out_value )
977978{
978- unsigned long long value ;
979+ uint_least64_t value ;
979980 size_t i ;
980981
981982 if (len < 1 || len > 8 ) {
0 commit comments