How to add a breakpoint to objc_exception_throw?
Asked Answered
C

4

80

this was the answer from the brad larson on this SO question

If you add two breakpoints, you should be able to debug these exceptions. To do this, go to Run | Show | Breakpoints and create two global breakpoints (I do them globally because they are so useful in all my applications). The first should be named "objc_exception_throw" and its location should be "libobjc.A.dylib". The second should be "-[NSException raise]" and its location should be "CoreFoundation".

Now, if you start debugging your application with breakpoints enabled, it should break on the throw of these exceptions. You should then be able to see the chain of events that led to the exception within the debugger.

now in this answer i want to ask how do i add location mentioned???

Convulse answered 22/7, 2009 at 8:59 Comment(2)
Anyone have screenshots/menu paths for XCode 4?Rintoul
Check out this thread on the Apple Dev Forums for instructions on how to do this in XCode 4: devforums.apple.com/thread/68421Wallpaper
H
81

I think Brad's answer is pretty clear; hopefully this can help if you're not finding it clear.

In Xcode, from the top menu click on Run > Show > Breakpoints. A new window pops up.

Select "global breakpoints" in the left hand menu. There should be a box on the right under the "Breakpoint" column with the text "Double-Click for symbol". Single-click in this box and type in "objc_exception_throw".

Then, single-click in the space next to "objc_exception_throw" under the "location" column. A box will appear for you to type in the location (in this case, "libobjc.A.dylib"). I've made a screenshot that will hopefully help:

alt text

Hubert answered 22/7, 2009 at 11:38 Comment(2)
In Xcode 4, there is a breakpoint navigator where you can add these.Exemption
Also you can install script that prints exception description in console, must have!Serosa
C
45

In Xcode 4 this great breakpoint can be added via "+" button on Breakpoints section (⌘ + 6)

enter image description here

Casie answered 8/2, 2013 at 6:38 Comment(2)
This same approach can be used in XCode 5Boathouse
Also you can install script that prints exception description in console, must have!Serosa
M
7

in Xcode 6 -- from top menu

Debug > Breakpoints > Create Exception Breakpoint

Misplay answered 7/4, 2015 at 8:2 Comment(1)
The other answers have changed, this answer is the correct one as of April 2017/Xcode8Mohenjodaro
B
4

I would also like to recommend adding the +[NSException raise:format:arguments:] breakpoint and its location should be CoreFoundation.

Boathouse answered 3/9, 2010 at 7:54 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.