aboutsummaryrefslogtreecommitdiffstats
path: root/Frameworks
diff options
context:
space:
mode:
authorMax <post@wickenrode.com>2015-08-06 23:29:50 +0200
committerMax <post@wickenrode.com>2015-08-06 23:29:50 +0200
commit5befad85ccd6d22900942ea73f4018d71038f516 (patch)
treee4140be1b430cd1c6e94db9db94f2b424e28b681 /Frameworks
parentde84dc3f4beaa370d1a8bfe02df41cfe450f59b2 (diff)
downloadsequelpro-5befad85ccd6d22900942ea73f4018d71038f516.tar.gz
sequelpro-5befad85ccd6d22900942ea73f4018d71038f516.tar.bz2
sequelpro-5befad85ccd6d22900942ea73f4018d71038f516.zip
* Expand the debugging code from prev. commit
* Also Sequel Pro will now crash on the "Attempted to connect a connection that is not disconnected" issue. That is sadly necessary to get a stack trace of ALL threads as for exceptions Feedback Reporter only gives us the current thread.
Diffstat (limited to 'Frameworks')
-rw-r--r--Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m7
1 files changed, 7 insertions, 0 deletions
diff --git a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
index d212867a..dfe4802f 100644
--- a/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
+++ b/Frameworks/SPMySQLFramework/Source/SPMySQLConnection.m
@@ -424,6 +424,11 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
#pragma mark -
#pragma mark Private API
+//http://alastairs-place.net/blog/2013/01/10/interesting-os-x-crash-report-tidbits/
+/* CrashReporter info */
+const char *__crashreporter_info__ = NULL;
+asm(".desc ___crashreporter_info__, 0x10");
+
@implementation SPMySQLConnection (PrivateAPI)
/**
@@ -434,6 +439,8 @@ const char *SPMySQLSSLPermissibleCiphers = "DHE-RSA-AES256-SHA:AES256-SHA:DHE-RS
// If a connection is already active in some form, throw an exception
if (state != SPMySQLDisconnected && state != SPMySQLConnectionLostInBackground) {
+ asprintf(&__crashreporter_info__, "Attempted to connect a connection that is not disconnected (SPMySQLConnectionState=%d).", state);
+ __builtin_trap();
[NSException raise:NSInternalInconsistencyException format:@"Attempted to connect a connection that is not disconnected (SPMySQLConnectionState=%d).", state];
return NO;
}