diff --git a/main/backtrace.c b/main/backtrace.c
index aed4ffd94a7070680c4212fef2884eaedf99c3e0..7dfcfc36d8e119fd0c0e1967fe810e4016bcee17 100644
--- a/main/backtrace.c
+++ b/main/backtrace.c
@@ -130,7 +130,7 @@ char **__ast_bt_get_symbols(void **addresses, size_t num_frames)
 			}
 
 			for (section = bfdobj->sections; section; section = section->next) {
-				if (!bfd_get_section_flags(bfdobj, section) & SEC_ALLOC ||
+				if (!(bfd_get_section_flags(bfdobj, section) & SEC_ALLOC) ||
 					section->vma > offset ||
 					section->size + section->vma < offset) {
 					continue;