Update of /cvsroot/pgsqlclient/pgsqlclient_10/PostgreSql.Data.PgSqlClient/source
In directory sc8-pr-cvs1:/tmp/cvs-serv14824
Modified Files:
PgDbConnection.cs
Log Message:
Avoid problems with empty elements on connection string.
Index: PgDbConnection.cs
===================================================================
RCS file: /cvsroot/pgsqlclient/pgsqlclient_10/PostgreSql.Data.PgSqlClient/source/PgDbConnection.cs,v
retrieving revision 1.2
retrieving revision 1.3
diff -C2 -d -r1.2 -r1.3
*** PgDbConnection.cs 12 Aug 2003 13:12:34 -0000 1.2
--- PgDbConnection.cs 9 Oct 2003 15:46:23 -0000 1.3
***************
*** 37,41 ****
private bool pooled;
private Regex search;
- // private MatchCollection elements;
#endregion
--- 37,40 ----
***************
*** 81,85 ****
{
settings = new PgConnectionParams();
- // search = new Regex(@"([\w\s\d]*)\s*=\s*([\w\s\d]*)");
search = new Regex(@"([\w\s\d]*)\s*=\s*([^;]*)");
--- 80,83 ----
***************
*** 131,180 ****
foreach (Match element in elements)
{
! switch (element.Groups[1].Value.Trim().ToLower())
{
! case "datasource":
! case "server":
! case "host":
! settings.ServerName = element.Groups[2].Value.Trim();
! break;
! case "database":
! settings.Database = element.Groups[2].Value.Trim();
! break;
! case "user name":
! case "user":
! settings.UserName = element.Groups[2].Value.Trim();
! break;
! case "user password":
! case "password":
! settings.UserPassword = element.Groups[2].Value.Trim();
! break;
! case "port":
! settings.ServerPort = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "connection lifetime":
! lifetime = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "timeout":
! case "connection timeout":
! settings.Timeout = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "packet size":
! settings.PacketSize = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "pooling":
! settings.Pooling = Boolean.Parse(element.Groups[2].Value.Trim());
! break;
! case "ssl":
! settings.SSL = Boolean.Parse(element.Groups[2].Value.Trim());
! break;
}
}
--- 129,181 ----
foreach (Match element in elements)
{
! if (element.Groups[2].Value.Trim().Length > 0)
{
! switch (element.Groups[1].Value.Trim().ToLower())
! {
! case "datasource":
! case "server":
! case "host":
! settings.ServerName = element.Groups[2].Value.Trim();
! break;
! case "database":
! settings.Database = element.Groups[2].Value.Trim();
! break;
! case "user name":
! case "user":
! settings.UserName = element.Groups[2].Value.Trim();
! break;
! case "user password":
! case "password":
! settings.UserPassword = element.Groups[2].Value.Trim();
! break;
! case "port":
! settings.ServerPort = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "connection lifetime":
! lifetime = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "timeout":
! case "connection timeout":
! settings.Timeout = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "packet size":
! settings.PacketSize = Int32.Parse(element.Groups[2].Value.Trim());
! break;
! case "pooling":
! settings.Pooling = Boolean.Parse(element.Groups[2].Value.Trim());
! break;
! case "ssl":
! settings.SSL = Boolean.Parse(element.Groups[2].Value.Trim());
! break;
! }
}
}
|