long options vs unix - Mailing list pgadmin-hackers
From | Magnus Hagander |
---|---|
Subject | long options vs unix |
Date | |
Msg-id | 49BFA145.8020509@hagander.net Whole thread Raw |
Responses |
Re: long options vs unix
|
List | pgadmin-hackers |
The change to using long options for pg_dump and friends seem to have broken it, at least on linux. But I assume it still worked on at least osx *or* windows, since that's where Dave would've tested it :-) It would more or less never work, since it tried to put a double-quote in the actual filename *before* the / specifying the root directory.. Here's a patch that removes the = sign after the parameter names. That makes it work on linux again. I would appreciate it if somebody can test this patch on windows and/or osx as well to confirm it doesn't break things there. //Magnus Index: frm/frmBackupServer.cpp =================================================================== --- frm/frmBackupServer.cpp (revision 7715) +++ frm/frmBackupServer.cpp (working copy) @@ -141,10 +141,10 @@ cmd=pgBackupAllExecutable; if (!server->GetName().IsEmpty()) - cmd += wxT(" --host=") + server->GetName(); + cmd += wxT(" --host ") + server->GetName(); - cmd += wxT(" --port=") + NumToStr((long)server->GetPort()) - + wxT(" --username=") + server->GetUsername(); + cmd += wxT(" --port ") + NumToStr((long)server->GetPort()) + + wxT(" --username ") + server->GetUsername(); return cmd; } @@ -158,7 +158,7 @@ if (chkVerbose->GetValue()) cmd.Append(wxT(" --verbose")); - cmd.Append(wxT(" --file=\"") + txtFilename->GetValue() + wxT("\"")); + cmd.Append(wxT(" --file \"") + txtFilename->GetValue() + wxT("\"")); return cmd; } Index: frm/frmBackup.cpp =================================================================== --- frm/frmBackup.cpp (revision 7715) +++ frm/frmBackup.cpp (working copy) @@ -196,10 +196,10 @@ cmd=pgBackupExecutable; if (!server->GetName().IsEmpty()) - cmd += wxT(" --host=") + server->GetName(); + cmd += wxT(" --host ") + server->GetName(); - cmd += wxT(" --port=") + NumToStr((long)server->GetPort()) - + wxT(" --username=") + server->GetUsername(); + cmd += wxT(" --port ") + NumToStr((long)server->GetPort()) + + wxT(" --username ") + server->GetUsername(); if (object->GetConnection()->GetIsGreenplum()) cmd += wxT(" --gp-syntax "); @@ -223,21 +223,21 @@ { case 0: // compressed { - cmd.Append(wxT(" --format=custom")); + cmd.Append(wxT(" --format custom")); if (chkBlobs->GetValue()) cmd.Append(wxT(" --blobs")); break; } case 1: // tar { - cmd.Append(wxT(" --format=tar")); + cmd.Append(wxT(" --format tar")); if (chkBlobs->GetValue()) cmd.Append(wxT(" --blobs")); break; } case 2: { - cmd.Append(wxT(" --format=plain")); + cmd.Append(wxT(" --format plain")); if (chkOnlyData->GetValue()) { cmd.Append(wxT(" --data-only")); @@ -270,13 +270,13 @@ if (chkVerbose->GetValue()) cmd.Append(wxT(" --verbose")); - cmd.Append(wxT(" --file=\"") + txtFilename->GetValue() + wxT("\"")); + cmd.Append(wxT(" --file \"") + txtFilename->GetValue() + wxT("\"")); if (object->GetMetaType() == PGM_SCHEMA) #ifdef WIN32 - cmd.Append(wxT(" --schema=\\\"") + ((pgSchema*)object)->GetIdentifier() + wxT("\\\"")); + cmd.Append(wxT(" --schema \\\"") + ((pgSchema*)object)->GetIdentifier() + wxT("\\\"")); #else - cmd.Append(wxT(" --schema='") + ((pgSchema*)object)->GetQuotedIdentifier() + wxT("'")); + cmd.Append(wxT(" --schema '") + ((pgSchema*)object)->GetQuotedIdentifier() + wxT("'")); #endif else if (object->GetMetaType() == PGM_TABLE || object->GetMetaType() == GP_PARTITION) @@ -285,17 +285,17 @@ if (pgAppMinimumVersion(backupExecutable, 8, 2)) { #ifdef WIN32 - cmd.Append(wxT(" --table=\"\\\"") + ((pgTable*)object)->GetSchema()->GetIdentifier() + + cmd.Append(wxT(" --table \"\\\"") + ((pgTable*)object)->GetSchema()->GetIdentifier() + wxT("\\\".\\\"") + ((pgTable*)object)->GetIdentifier() + wxT("\\\"\"")); #else - cmd.Append(wxT(" --table='") + ((pgTable*)object)->GetSchema()->GetQuotedIdentifier() + + cmd.Append(wxT(" --table '") + ((pgTable*)object)->GetSchema()->GetQuotedIdentifier() + wxT(".") + ((pgTable*)object)->GetQuotedIdentifier() + wxT("'")); #endif } else { - cmd.Append(wxT(" --table=") + ((pgTable*)object)->GetQuotedIdentifier()); - cmd.Append(wxT(" --schema=") + ((pgTable*)object)->GetSchema()->GetQuotedIdentifier()); + cmd.Append(wxT(" --table ") + ((pgTable*)object)->GetQuotedIdentifier()); + cmd.Append(wxT(" --schema ") + ((pgTable*)object)->GetSchema()->GetQuotedIdentifier()); } } Index: frm/frmBackupGlobals.cpp =================================================================== --- frm/frmBackupGlobals.cpp (revision 7715) +++ frm/frmBackupGlobals.cpp (working copy) @@ -158,10 +158,10 @@ cmd=pgBackupAllExecutable; if (!server->GetName().IsEmpty()) - cmd += wxT(" --host=") + server->GetName(); + cmd += wxT(" --host ") + server->GetName(); - cmd += wxT(" --port=") + NumToStr((long)server->GetPort()) - + wxT(" --username=") + server->GetUsername(); + cmd += wxT(" --port ") + NumToStr((long)server->GetPort()) + + wxT(" --username ") + server->GetUsername(); return cmd; } @@ -175,7 +175,7 @@ if (chkVerbose->GetValue()) cmd.Append(wxT(" --verbose")); - cmd.Append(wxT(" --file=\"") + txtFilename->GetValue() + wxT("\"")); + cmd.Append(wxT(" --file \"") + txtFilename->GetValue() + wxT("\"")); cmd.Append(wxT(" --globals-only")); Index: frm/frmRestore.cpp =================================================================== --- frm/frmRestore.cpp (revision 7715) +++ frm/frmRestore.cpp (working copy) @@ -290,11 +290,11 @@ cmd=pgRestoreExecutable; if (!server->GetName().IsEmpty()) - cmd += wxT(" --host=") + server->GetName(); + cmd += wxT(" --host ") + server->GetName(); - cmd += wxT(" --port=") + NumToStr((long)server->GetPort()) - + wxT(" --username=") + qtIdent(server->GetUsername()) - + wxT(" --dbname=") + commandLineCleanOption(object->GetDatabase()->GetQuotedIdentifier()); + cmd += wxT(" --port ") + NumToStr((long)server->GetPort()) + + wxT(" --username ") + qtIdent(server->GetUsername()) + + wxT(" --dbname ") + commandLineCleanOption(object->GetDatabase()->GetQuotedIdentifier()); return cmd; } @@ -339,19 +339,19 @@ { int sel=lstContents->GetSelection(); if (lstContents->GetText(sel, 0).Lower() == wxString(_("Function")).Lower()) - cmd.Append(wxT(" --function=") + qtIdent(lstContents->GetText(sel, 1).BeforeLast('('))); + cmd.Append(wxT(" --function ") + qtIdent(lstContents->GetText(sel, 1).BeforeLast('('))); else if (lstContents->GetText(sel, 0).Lower() == wxString(_("Table")).Lower()) - cmd.Append(wxT(" --table=") + qtIdent(lstContents->GetText(sel, 1))); + cmd.Append(wxT(" --table ") + qtIdent(lstContents->GetText(sel, 1))); else return wxT("restore: internal pgadmin error."); // shouldn't happen! break; } case PGM_TABLE: - cmd.Append(wxT(" --table=") + object->GetQuotedIdentifier()); + cmd.Append(wxT(" --table ") + object->GetQuotedIdentifier()); break; case PGM_FUNCTION: - cmd.Append(wxT(" --function=") + object->GetQuotedIdentifier()); + cmd.Append(wxT(" --function ") + object->GetQuotedIdentifier()); break; default: break;
pgadmin-hackers by date: