#0 0x00007fff8fe6ce40 in CFBooleanGetValue ()
from /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation
#1 0x00000001000032e9 in quartzWindows ()
#2 0x000000010001560f in _idris__123_APPLY0_125_ ()
#3 0x0000000100021753 in _idris_io_95_bind ()
#4 0x0000000100021753 in _idris_io_95_bind ()
#5 0x0000000100021753 in _idris_io_95_bind ()
#6 0x000000010004b242 in _idris__123_runMain0_125_ ()
#7 0x0000000100054bf9 in main ()
CFBooleanRef frontMostRef;
AXUIElementCopyAttributeValue(axElementRef, kAXFrontmostAttribute, (const void **)&frontMostRef);
NSArray *windowRefs = CFBridgingRelease(windowsArrayRef);
for (NSUInteger index = 0; index < windowRefs.count; ++index) {
AXUIElementRef windowRef = (__bridge AXUIElementRef)windowRefs[index];
CFTypeRef subroleRef;
AXUIElementCopyAttributeValue(windowRef, kAXSubroleAttribute, &subroleRef);
NSString *subrole = CFBridgingRelease(subroleRef);
CGWindowID wid;
_AXUIElementGetWindow(windowRef, &wid);
CFBooleanRef mainRef;
AXUIElementCopyAttributeValue(windowRef, kAXMainAttribute, (const void **)&mainRef);
/*
* segfault must be happening here
*/
if (CFBooleanGetValue(frontMostRef) && CFBooleanGetValue(mainRef)) {
windows->focused = wid;
}
if ([subrole isEqualToString:(__bridge NSString *)kAXStandardWindowSubrole]) {
if (windows->length < QUARTZ_WINDOWS_LENGTH) {
windows->wids[windows->length] = wid;
windows->length++;
}
}
}