Index: frmGrantWizard.cpp =================================================================== RCS file: /projects/pgadmin3/src/ui/frmGrantWizard.cpp,v retrieving revision 1.4 retrieving revision 1.5 diff -Lsrc/ui/frmGrantWizard.cpp -Lsrc/ui/frmGrantWizard.cpp -u -w -r1.4 -r1.5 --- src/ui/frmGrantWizard.cpp +++ src/ui/frmGrantWizard.cpp @@ -47,6 +47,9 @@ LoadResource(form, wxT("frmGrantWizard")); RestorePosition(); + if (object->IsCollection()) + SetTitle(wxString::Format(_("Privileges for %s"), object->GetTranslatedTypeName().c_str(), "")); + else SetTitle(wxString::Format(_("Privileges for %s %s"), object->GetTranslatedTypeName().c_str(), object->GetFullIdentifier().c_str())); // Icon @@ -222,14 +225,24 @@ pgObject *obj=(pgObject*)objectArray.Item(i); - if (obj->GetType() == PG_FUNCTION || obj->GetType() == PG_TRIGGERFUNCTION) + switch (obj->GetType()) + { + case PG_FUNCTION: + case PG_TRIGGERFUNCTION: { tmp = securityPage->GetGrant(wxT("X"), wxT("FUNCTION ") + obj->GetQuotedFullIdentifier() + wxT("(") + ((pgFunction*)obj)->GetArgTypes() + wxT(")")); + break; } - else + case PG_VIEW: + case PG_SEQUENCE: + tmp = securityPage->GetGrant(wxT("arwdRxt"), wxT("TABLE ") + obj->GetQuotedFullIdentifier()); + break; + default: tmp = securityPage->GetGrant(wxT("arwdRxt"), obj->GetTypeName().Upper() + wxT(" ") + obj->GetQuotedFullIdentifier()); + break; + } if (!tmp.IsEmpty()) sql.Append(tmp); Index: dlgClasses.cpp =================================================================== RCS file: /projects/pgadmin3/src/ui/dlgClasses.cpp,v retrieving revision 1.8 retrieving revision 1.9 diff -Lsrc/ui/dlgClasses.cpp -Lsrc/ui/dlgClasses.cpp -u -w -r1.8 -r1.9 --- src/ui/dlgClasses.cpp +++ src/ui/dlgClasses.cpp @@ -235,12 +235,16 @@ if (thread) { + bool isOk = (thread->ReturnCode() == PGRES_COMMAND_OK || thread->ReturnCode() == PGRES_TUPLES_OK); + if (txtMessages) txtMessages->AppendText(thread->GetMessagesAndClear()); if (thread->DataSet() != NULL) wxLogDebug(wxString::Format(_("%d rows."), thread->DataSet()->NumRows())); + if (isOk) + { if (txtMessages) txtMessages->AppendText(_("Total query runtime: ") + (wxGetLocalTimeMillis()-startTime).ToString() + wxT(" ms.")); @@ -249,6 +253,13 @@ btnCancel->Disable(); } else + { + if (txtMessages) + txtMessages->AppendText(object->GetConnection()->GetLastError()); + Abort(); + } + } + else if (txtMessages) txtMessages->AppendText(_("\nCancelled.\n"));