Skip to content

Commit

Permalink
Fix ksobjc_objectType error (#422)
Browse files Browse the repository at this point in the history
NSObject *obj = [NSObject new];
ksobjc_objectType((__bridge void *)obj);

Both object and block return KSObjCTypeUnknown.

Co-authored-by: yuencong <yuencong@kuaishou.com>
  • Loading branch information
xuezhulian and yuencong committed May 5, 2024
1 parent 886578f commit 656456d
Showing 1 changed file with 2 additions and 7 deletions.
9 changes: 2 additions & 7 deletions Source/KSCrash/Recording/Tools/KSObjC.c
Original file line number Diff line number Diff line change
Expand Up @@ -924,16 +924,11 @@ KSObjCType ksobjc_objectType(const void* objectOrClassPtr)
return KSObjCTypeObject;
}

if(!isValidObject(objectOrClassPtr))
if(!isValidObject(objectOrClassPtr) && !isValidClass(objectOrClassPtr))
{
return KSObjCTypeUnknown;
}

if(!isValidClass(objectOrClassPtr))
{
return KSObjCTypeUnknown;
}


const struct class_t* isa = getIsaPointer(objectOrClassPtr);

if(isBlockClass(isa))
Expand Down

0 comments on commit 656456d

Please sign in to comment.