Skip to content

Commit 4fa16db

Browse files
committedAug 1, 2019
render: don't free blur_kerns_cache when it's not used
blur_kernel_count could be none zero when user set a blur kernel but didn't enable blur. In that case deinit_render will try to free elements of blur_kerns_cache, causing a segfault because blur_kerns_cache is never allocated. Fixes #209 Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
1 parent cfa5fcc commit 4fa16db

File tree

1 file changed

+5
-3
lines changed

1 file changed

+5
-3
lines changed
 

‎src/render.c

+5-3
Original file line numberDiff line numberDiff line change
@@ -1198,10 +1198,12 @@ void deinit_render(session_t *ps) {
11981198
}
11991199
#endif
12001200

1201-
for (int i = 0; i < ps->o.blur_kernel_count; i++) {
1202-
free(ps->blur_kerns_cache[i]);
1201+
if (ps->o.blur_method != BLUR_METHOD_NONE) {
1202+
for (int i = 0; i < ps->o.blur_kernel_count; i++) {
1203+
free(ps->blur_kerns_cache[i]);
1204+
}
1205+
free(ps->blur_kerns_cache);
12031206
}
1204-
free(ps->blur_kerns_cache);
12051207
}
12061208

12071209
// vim: set ts=8 sw=8 noet :

0 commit comments

Comments
 (0)
Please sign in to comment.