2
2
#include <stdlib.h>
3
3
#include <string.h>
4
4
#include <stdint.h>
5
+ #include <assert.h>
5
6
#include "dds.h"
6
7
#include "tex.h"
7
8
@@ -20,15 +21,15 @@ void dds2tex(const char* dds_path)
20
21
rewind (dds_file );
21
22
22
23
char magic [4 ];
23
- fread (magic , 1 , 4 , dds_file );
24
- if ( file_size < sizeof (DDS_HEADER ) + 4 || memcmp (magic , dds_magic , 4 ) != 0 ) {
24
+ if ( fread (magic , 1 , 4 , dds_file ) != 4
25
+ || file_size < sizeof (DDS_HEADER ) + 4 || memcmp (magic , dds_magic , 4 ) != 0 ) {
25
26
fprintf (stderr , "Error: Not a valid dds file!\n" );
26
27
fclose (dds_file );
27
28
return ;
28
29
}
29
30
30
31
DDS_HEADER dds_header ;
31
- fread (& dds_header , sizeof (DDS_HEADER ), 1 , dds_file );
32
+ assert ( fread (& dds_header , sizeof (DDS_HEADER ), 1 , dds_file ) == 1 );
32
33
33
34
const uint8_t * tex_format ;
34
35
if (memcmp (dds_header .ddspf .dwFourCC , "DXT1" , 4 ) == 0 ) {
@@ -62,7 +63,7 @@ void dds2tex(const char* dds_path)
62
63
63
64
// the raw dds image data
64
65
uint8_t * data_buffer = malloc (file_size - sizeof (DDS_HEADER ) - 4 );
65
- fread (data_buffer , 1 , file_size - sizeof (DDS_HEADER ) - 4 , dds_file );
66
+ assert ( fread (data_buffer , 1 , file_size - sizeof (DDS_HEADER ) - 4 , dds_file ) == file_size - sizeof ( DDS_HEADER ) - 4 );
66
67
fwrite (data_buffer , 1 , file_size - sizeof (DDS_HEADER ) - 4 , tex_file );
67
68
free (data_buffer );
68
69
@@ -83,14 +84,14 @@ void tex2dds(const char* tex_path)
83
84
rewind (tex_file );
84
85
85
86
TEX_HEADER tex_header ;
86
- fread (tex_header .magic , 1 , 4 , tex_file );
87
- if ( file_size < sizeof (TEX_HEADER ) || memcmp (tex_header .magic , tex_magic , 4 ) != 0 ) {
87
+ if ( fread (tex_header .magic , 1 , 4 , tex_file ) != 4
88
+ || file_size < sizeof (TEX_HEADER ) || memcmp (tex_header .magic , tex_magic , 4 ) != 0 ) {
88
89
fprintf (stderr , "Error: Not a valid tex file!\n" );
89
90
fclose (tex_file );
90
91
return ;
91
92
}
92
93
93
- fread ((uint8_t * ) & tex_header + 4 , sizeof (TEX_HEADER ) - 4 , 1 , tex_file );
94
+ assert ( fread ((uint8_t * ) & tex_header + 4 , sizeof (TEX_HEADER ) - 4 , 1 , tex_file ) == 1 );
94
95
95
96
const char * dds_format ;
96
97
if (memcmp (tex_header .tex_format , tex_dxt1_format , 4 ) == 0 ) {
@@ -132,7 +133,7 @@ void tex2dds(const char* tex_path)
132
133
133
134
// the raw dds image data
134
135
uint8_t * data_buffer = malloc (file_size - sizeof (TEX_HEADER ));
135
- fread (data_buffer , 1 , file_size - sizeof (TEX_HEADER ), tex_file );
136
+ assert ( fread (data_buffer , 1 , file_size - sizeof (TEX_HEADER ), tex_file ) == file_size - sizeof ( TEX_HEADER ) );
136
137
fwrite (data_buffer , 1 , file_size - sizeof (TEX_HEADER ), dds_file );
137
138
free (data_buffer );
138
139
0 commit comments