Index: schema/pgFunction.cpp
===================================================================
--- schema/pgFunction.cpp	(revision 7569)
+++ schema/pgFunction.cpp	(working copy)
@@ -554,8 +554,8 @@
                         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: utils/misc.cpp
===================================================================
--- utils/misc.cpp	(revision 7569)
+++ utils/misc.cpp	(working copy)
@@ -1251,7 +1251,7 @@
         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 @@
         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;
 }
