aboutsummaryrefslogtreecommitdiffstats
path: root/Source/SPTableData.m
diff options
context:
space:
mode:
authorrowanbeentje <rowan@beent.je>2010-06-02 00:21:46 +0000
committerrowanbeentje <rowan@beent.je>2010-06-02 00:21:46 +0000
commit6a50c5b04187d6546aa11c50a38f77b8ba132565 (patch)
treec4704f8afc356c49d918e09a7c6134b798b00138 /Source/SPTableData.m
parentafa83e2e94ec0abe2cd6c2cbf4fe43d5616bbc6c (diff)
downloadsequelpro-6a50c5b04187d6546aa11c50a38f77b8ba132565.tar.gz
sequelpro-6a50c5b04187d6546aa11c50a38f77b8ba132565.tar.bz2
sequelpro-6a50c5b04187d6546aa11c50a38f77b8ba132565.zip
- Fix exceptions and crashes caused by corrupt tables, disabled storage engines, or similar hard MySQL errors
Diffstat (limited to 'Source/SPTableData.m')
-rw-r--r--Source/SPTableData.m6
1 files changed, 6 insertions, 0 deletions
diff --git a/Source/SPTableData.m b/Source/SPTableData.m
index ea9229cb..35d7060b 100644
--- a/Source/SPTableData.m
+++ b/Source/SPTableData.m
@@ -850,6 +850,12 @@
[status setObject:[status objectForKey:@"Type"] forKey:@"Engine"];
}
+ // If the "Engine" key is NULL, a problem occurred when retrieving the table information.
+ if ([[status objectForKey:@"Engine"] isNSNull]) {
+ [status setDictionary:[NSDictionary dictionaryWithObjectsAndKeys:@"Error", @"Engine", [NSString stringWithFormat:@"An error occurred retrieving table information. MySQL said: %@", [status objectForKey:@"Comment"]], @"Comment", [tableListInstance tableName], @"Name", nil]];
+ return FALSE;
+ }
+
// Add a note for whether the row count is accurate or not - only for MyISAM
if ([[status objectForKey:@"Engine"] isEqualToString:@"MyISAM"]) {
[status setObject:@"y" forKey:@"RowsCountAccurate"];