Hello:

Bug report,I fix it with embeded version.

provider couldn't Access the database where it have a long "chinese
path",I spent for half hours to fix it:
search for [(short)database.Length] and replace it with:
(short)((System.Text.Encoding.GetEncoding("GB18030").GetBytes(database)).Length)
It's in "FesDatabase.cs",and we should replace two lines.

I have committed a fix to the CVS that should fix this by using the Charset specified in the connection string, no wth eAttach method looks like:

public void Attach(DatabaseParameterBuffer dpb, string dataSource, int port, string database)
{
   lock (this)
   {
       byte[]  databaseBuffer  = this.Charset.GetBytes(database);
       int[]   statusVector    = FesConnection.GetNewStatusVector();
       int     dbHandle = 0;

       FbClient.isc_attach_database(
           statusVector,
           (short)databaseBuffer.Length,
           databaseBuffer,
           ref dbHandle,
           (short)dpb.Length,
           dpb.ToArray());

       this.ParseStatusVector(statusVector);

       // Update the database handle
       this.handle = dbHandle;

       // Get server version
       this.serverVersion = this.GetServerVersion();
   }
}

--
Carlos Guzmán Álvarez
Vigo-Spain

http://carlosga.blogspot.com/



-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://ads.osdn.com/?ad_id=7637&alloc_id=16865&op=click
_______________________________________________
Firebird-net-provider mailing list
Firebird-net-provider@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/firebird-net-provider

Reply via email to