Quantcast
Channel: Debugging – Michael Tsai
Browsing all 170 articles
Browse latest View live

Compiler Writers Gone Wild: ARC Madness

Marcel Weiher: When they turned to me, I was also initially puzzled, because all this should do on x86 is stuff a zero into %eax and return. This cannot possibly crash, so everyone just assumed that...

View Article


Swift and Debuggability

Russell Ivanovic: Currently in Swift, those stack traces are even worse. I won’t post one until they actually release it to be fair to Apple…but why oh why when they were making a ‘modern’ programming...

View Article


Tracking Down a WebKit Crasher

Daniel Jalkut: I love it when customers take the time to write something about the circumstances surrounding a crash. Often even a little clue can be enough to lead to the unique series of steps that...

View Article

NSAtom, the True Object

Brian Webster: In our case, if our method is returning a YES value, that will end up with a full value of 0x0000000000000001. If you try interpreting this value as an object, the runtime will think it...

View Article

View Bridge Logging

Daniel Jalkut: This could be handy if you’re trying to work out the particulars of why or if a particular event is even reaching your extension. In fact the vast number of logging messages have often...

View Article


Reinventing AEPrintDesc

Daniel Jalkut: But when one is head-down, debugging a serious AppleEvent issue, it’s not uncommon to need to print AEDescs left, right, up, down, and diagonally. This needs to be fast-and-furious, not...

View Article

Xcode Consolation

Daniel Jalkut: Those are the basics, but another trick, I believe it was called ret in Gdb, comes in handy often: thread return – return immediately from the current stack frame You could use this if...

View Article

Objective-C Debugging Cheat Sheet

Tim Ekl: After some nudging from coworkers, I took some time and scraped together all the various private methods I could find (as well as a few suggested on Twitter) and combined them into one...

View Article


Activity Tracing

Florian Kugler: This year’s WWDC had an excellent session about it, but we thought it would be a good idea to give another overview here, since it is not widely known yet. The basic idea is that work...

View Article


objc.io on Debugging

I already linked to one article of the December objc.io, but the whole issue is great. The other articles are: Debugging: A Case Study Dancing in the Debugger — A Waltz with LLDB Debugging Checklist...

View Article

Hopper + lldb for iOS Developers

Bart Cone: Have you ever wondered how people get pseduo-code of some private API like the image below? It’s actually very simple and is a great way to chase down those annoying bugs in UIKit or some...

View Article

Documents in the Cloud: bird and brctl

Apple’s site doesn’t yet document them, but bird is the system daemon behind iCloud documents, and brctl is the corresponding control utility (via Zachary Drayer).

View Article

Swift Resistance

David Owens II (Open Radar): The fundamental problem with Swift, with regards to performance, is that it is impossible to reason what the performance of your code is going to be. It is impossible to...

View Article


Printing Objective-C Invocations in LLDB

Ari Grant: A while ago Facebook open-sourced Chisel, a collection of commands and functions to assist in debugging iOS apps in LLDB.[…]
There is one command that I find particularly fun and interesting...

View Article

Lessons Learned in Software Development

Henrik Warne (via Drew Crawford): When you develop, and some tests fail, or a feature stops working, it’s much easier to find the problem if you only changed one thing. In other words, use short...

View Article


The One Line You Should Add to Every Makefile

John Graham-Cumming, who’s just written the GNU Make Book (Amazon): It’s: print-%: ; @echo $*=$($*) It allows you to quickly get the value of any makefile variable. For example, suppose you want to...

View Article

LLVM’s New libFuzzer

Kostya Serebryany:Fuzzing (or fuzz testing) is becoming increasingly popular. Fuzzing Clang and fuzzing with Clang is not new: Clang-based AddressSanitizer has been used for fuzz-testing the Chrome...

View Article


NSShowUnalignedViews

Ken Ferry: pass -NSShowUnalignedViews YES to get colored drawing around non-px-integral views

View Article

An @import-ant Change in Xcode

Craig Hockenberry:Buried deep within the Xcode 6.3 release notes there is a true gem that can relieve this daily frustration.LLDB’s parser for Objective-C can now go through any module used in your app...

View Article

Debugging launchd

wuntee.sexy (via Hacker News): The reason I had an interest in debugging launchd is because I had been able to trigger some crashes. launchd is like init for linux; the kernel spawns it as PID 1 and...

View Article
Browsing all 170 articles
Browse latest View live