From 59af5bf6ec7ca0ed4a58a8accb72997320f1041d Mon Sep 17 00:00:00 2001 From: Ansgar Becker Date: Tue, 15 Dec 2009 22:28:23 +0000 Subject: [PATCH] Catch exception when user lacks privileges for SHOW VIEW or SHOW CREATE TABLE command. --- source/main.pas | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/source/main.pas b/source/main.pas index 302929c7..73d751d4 100644 --- a/source/main.pas +++ b/source/main.pas @@ -6181,12 +6181,16 @@ begin SelectedTableColumns.Clear; SelectedTableKeys.Clear; SelectedTableForeignKeys.Clear; - case SelectedTable.NodeType of - lntTable, lntCrashedTable: begin - SelectedTableCreateStatement := Connection.GetVar('SHOW CREATE TABLE '+Mainform.mask(SelectedTable.Text), 1); - ParseTableStructure(SelectedTableCreateStatement, SelectedTableColumns, SelectedTableKeys, SelectedTableForeignKeys); + try + case SelectedTable.NodeType of + lntTable, lntCrashedTable: begin + SelectedTableCreateStatement := Connection.GetVar('SHOW CREATE TABLE '+Mainform.mask(SelectedTable.Text), 1); + ParseTableStructure(SelectedTableCreateStatement, SelectedTableColumns, SelectedTableKeys, SelectedTableForeignKeys); + end; + lntView: ParseViewStructure(SelectedTable.Text, SelectedTableColumns); end; - lntView: ParseViewStructure(SelectedTable.Text, SelectedTableColumns); + except on E:Exception do + MessageDlg(E.Message, mtError, [mbOK], 0); end; if tabEditor.TabVisible then begin actEditObjectExecute(Sender);