Fix function default value handling for EDB 8.4.
authordpage <dpage@a7884b65-44f6-0310-8a51-81a127f17b15>
Tue, 27 Jan 2009 09:22:42 +0000 (09:22 +0000)
committerdpage <dpage@a7884b65-44f6-0310-8a51-81a127f17b15>
Tue, 27 Jan 2009 09:22:42 +0000 (09:22 +0000)
git-svn-id: svn://svn.pgadmin.org/trunk/pgadmin3@7573 a7884b65-44f6-0310-8a51-81a127f17b15

pgadmin/schema/pgFunction.cpp
pgadmin/utils/misc.cpp

index b3cce3fce5d34d5ea0f4503a2833941efeba809d..dc6e3d3b0c802589105eda778c12cbf2fa5a56e1 100644 (file)
@@ -554,8 +554,8 @@ pgFunction *pgFunctionFactory::AppendFunctions(pgObject *obj, pgSchema *schema,
                         if (function->GetArgDefValCount() != 0 &&
                             nArgsIN < (size_t)function->GetArgDefValCount())
                         {
-                            function->iAddArgDef(argDefValArray[currINindex++]);
-                            continue;
+                            if (argDefValArray[currINindex++] != wxT("-"))
+                                function->iAddArgDef(argDefValArray[currINindex-1]);
                         }
                     }
                     function->iAddArgDef(wxEmptyString);
index 2cc02f2bf01630716566355eca700507e02162c5..a1ff682f57da98eaf25e0dd464e7376d0cc78bd1 100644 (file)
@@ -1251,7 +1251,7 @@ bool getArrayFromCommaSeparatedList(const wxString& str, wxArrayString& res)
         else if (!inDoubleQuote && !inSingleQuote && nBracketLevel == 0 && curr == (wxChar)',')
         {
             if (index != startArray)
-                res.Add(str.SubString(startArray, index - 1).Trim());
+                res.Add(str.SubString(startArray, index - 1).Trim(true).Trim(false));
             else
                 res.Add(wxEmptyString);
             startArray = index + 1;
@@ -1261,7 +1261,7 @@ bool getArrayFromCommaSeparatedList(const wxString& str, wxArrayString& res)
         return false;
 
     // Add last value to array
-    res.Add(str.SubString(startArray, index).Trim());
+    res.Add(str.SubString(startArray, index).Trim(true).Trim(false));
     
     return true;
 }