Skip to content

Commit bf61dc6

Browse files
authored
allocate workspace on stack instead of heap (#4)
1 parent 48a0e24 commit bf61dc6

File tree

1 file changed

+3
-5
lines changed

1 file changed

+3
-5
lines changed

Diff for: lib/block.c

+3-5
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,18 @@
2121
int smile_decode_block(void *dst, int dstlen, void *src, int srclen)
2222
{
2323
s_stream stream;
24-
stream.workspace = malloc(sizeof(struct decode_workspace));
25-
smile_decode_init(&stream);
24+
struct decode_workspace workspace;
25+
stream.workspace = &workspace;
26+
smile_decode_reset(&stream);
2627

2728
stream.next_in = src;
2829
stream.avail_in = srclen;
2930

3031
stream.next_out = dst;
3132
stream.avail_out = dstlen;
3233

33-
// Decode block
3434
int err = smile_decode(&stream);
3535

36-
free(stream.workspace);
37-
3836
if (err == -1) {
3937
return -EIO;
4038
}

0 commit comments

Comments
 (0)