Go to most recent revision | Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1906 | serge | 1 | |
2 | #include |
||
3 | #include |
||
4 | |||
5 | |||
6 | { |
||
7 | fileinfo_t info; |
||
8 | size_t bytes; |
||
9 | void *file = NULL; |
||
10 | |||
11 | |||
12 | |||
13 | |||
14 | |||
15 | { |
||
16 | |||
17 | |||
18 | read_file(path, file, 0, info.size, &bytes ); |
||
19 | if( bytes == info.size ) |
||
20 | { |
||
21 | if ( *(uint32_t*)file == 0x4B43504B ) |
||
22 | { |
||
23 | void *tmp = NULL; |
||
24 | info.size = ((size_t*)file)[1]; |
||
25 | tmp = user_alloc(info.size); |
||
26 | unpack(file, tmp); |
||
27 | user_free(file); |
||
28 | file = tmp; |
||
29 | } |
||
30 | if(len) *len = info.size; |
||
31 | }; |
||
32 | }; |
||
33 | return file; |
||
34 | }; |
||
35 |