[Mono-dev] my web page cann't access oracle.
My error message as follows: System.DllNotFoundException: clntsh in (wrapper managed-to-native) OciNativeCalls:OCIEnvCreate (intptr,System.Data.OracleClient.Oci.OciEnvironmentMode,intptr,intptr,intptr,intptr,int,intptr) in 0x0001f System.Data.OracleClient.Oci.OciCalls:OCIEnvCreate (System.IntPtr envhpp, OciEnvironmentMode mode, IntPtr ctxp, IntPtr malocfp, IntPtr ralocfp, IntPtr mfreep, Int32 xtramem_sz, IntPtr usrmempp) in 0x0003c System.Data.OracleClient.Oci.OciEnvironmentHandle:.ctor (OciEnvironmentMode mode) in 0x0006b System.Data.OracleClient.Oci.OciGlue:CreateConnection (OracleConnectionInfo conInfo) in 0x00049 System.Data.OracleClient.OracleConnectionPoolManager:CreateConnection (OracleConnectionInfo info) in 0x0003f System.Data.OracleClient.OracleConnectionPool:CreateConnection () in 0x0010a System.Data.OracleClient.OracleConnectionPool:GetConnection () in 0x000e3 System.Data.OracleClient.OracleConnection:Open () in (wrapper remoting-invoke-with-check) System.Data.OracleClient.OracleConnection:Open () in 0x000e2 SiteView.ServerPage.ExecSql:Button1_Click (System.Object sender, System.EventArgs e) my OS is Redhat Enterprise AS4 and database is 10201_database_linux32 Apache and mono information as follows httpd-2.0.55.tar.gz mono-1.1.13.2.tar.gz mod_mono-1.1.13.tar.gz xsp-1.1.13.tar.gz == 263电子邮件-信赖邮自专业___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] MonoVTable undefined
Hi all, sorry if this is obvious, but it isn't for me The mono/metadata/object.h header file has two convenient macros that i'd like to use #define mono_object_class(obj) (((MonoObject*)(obj))-vtable-klass) #define mono_object_domain(obj) (((MonoObject*)(obj))-vtable-domain) Unfortunately ((MonoObject*)(obj))-vtable points to a MonoVTable structure which is undefined in the public headers. It is actually defined in the class-internals.h header, which is obviously internal. How would i get the class from an object, other than hackily using the knowledge that klass is the first data member of the undefined vtable? best greetings, Thomas -- Thomas Grill http://g.org ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Re: MonoVTable undefined
Thomas Grill wrote: Hi all, sorry if this is obvious, but it isn't for me The mono/metadata/object.h header file has two convenient macros that i'd like to use #define mono_object_class(obj) (((MonoObject*)(obj))-vtable-klass) #define mono_object_domain(obj) (((MonoObject*)(obj))-vtable-domain) Unfortunately ((MonoObject*)(obj))-vtable points to a MonoVTable structure which is undefined in the public headers. It is actually defined in the class-internals.h header, which is obviously internal. How would i get the class from an object, other than hackily using the knowledge that klass is the first data member of the undefined vtable? metadata/object.h: mono_object_get_class () mono_object_get_domain () Robert ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] MonoVTable undefined
oops, sorry for the noise - there's still MonoDomain* mono_object_get_domain (MonoObject *obj); MonoClass* mono_object_get_class (MonoObject *obj); all the best, Thomas Thomas Grill schrieb: Hi all, sorry if this is obvious, but it isn't for me The mono/metadata/object.h header file has two convenient macros that i'd like to use #define mono_object_class(obj) (((MonoObject*)(obj))-vtable-klass) #define mono_object_domain(obj) (((MonoObject*)(obj))-vtable-domain) Unfortunately ((MonoObject*)(obj))-vtable points to a MonoVTable structure which is undefined in the public headers. It is actually defined in the class-internals.h header, which is obviously internal. How would i get the class from an object, other than hackily using the knowledge that klass is the first data member of the undefined vtable? best greetings, Thomas -- Thomas Grill http://g.org ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] my web page cann't access oracle.
System.Data.OracleClient uses OCI library. On Linux, this would be something like libclntsh.soIt may even have a version number in the shared library name, for example, libclntsh.so.10.0You need to make sure this library can be found in your PATH. (or LD_LIBRARY_PATH). Basically, its however shared libraries are normally found on Linux (anyone feel free to jump in and correct me).Make sure your ORACLE_HOME is set.I do not have Linux in front of me right now to answer your question fully. zhulijun [EMAIL PROTECTED] wrote: My error message as follows:System.DllNotFoundException: clntsh in (wrapper managed-to-native) OciNativeCalls:OCIEnvCreate (intptr,System.Data.OracleClient.Oci.OciEnvironmentMode,intptr,intptr,intptr,intptr,int,intptr) in 0x0001f System.Data.OracleClient.Oci.OciCalls:OCIEnvCreate (System.IntPtr envhpp, OciEnvironmentMode mode, IntPtr ctxp, IntPtr malocfp, IntPtr ralocfp, IntPtr mfreep, Int32 xtramem_sz, IntPtr usrmempp) in 0x0003c System.Data.OracleClient.Oci.OciEnvironmentHandle:.ctor (OciEnvironmentMode mode) in 0x0006b System.Data.OracleClient.Oci.OciGlue:CreateConnection (OracleConnectionInfo conInfo) in 0x00049 System.Data.OracleClient.OracleConnectionPoolManager:CreateConnection (OracleConnectionInfo info) in 0x0003f System.Data.OracleClient.OracleConnectionPool:CreateConnection () in 0x0010a System.Data.OracleClient.OracleConnectionPool:GetConnection () in 0x000e3 System.Data.OracleClient.OracleConnection:Open () in (wrapper remoting-invoke-with-check) System.Data.OracleClient.OracleConnection:Open () in 0x000e2 SiteView.ServerPage.ExecSql:Button1_Click (System.Object sender, System.EventArgs e)my OS is Redhat Enterprise AS4and database is 10201_database_linux32Apache and mono information as followshttpd-2.0.55.tar.gzmono-1.1.13.2.tar.gzmod_mono-1.1.13.tar.gzxsp-1.1.13.tar.gz==263µç×ÓÓʼþ£ÐÅÀµÓÊ×Ôרҵ___Mono-devel-list mailing listMono-devel-list@lists.ximian.comhttp://lists.ximian.com/mailman/listinfo/mono-devel-list Yahoo! Mail Bring photos to life! New PhotoMail makes sharing a breeze. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] New managed code for unmanaged (Win32) resourcehandling (SRE, PEAPI, MCS)
Hello Kornél, Note that SRE and PEAPI parts were not discussed yet so I am waiting comments on those parts from component owners. Well, I would prefer to use the memory solution. 1. It's faster 2. It's easier to implement, no problems with file removing, creating, locking, etc. 3. I don't believe that anyone will link more than 10 MB resource file. I think this is an important feature of my resource handling infrastructure because you can use large resources if you want. But note that FileStream provides it's own buffering over OS file cache, so you will notice no (or little) difference for resource files smaller than 4K as they are retained in memory by FileStream in fact. But note that only SRE is involved in this question as mcs does no actual resource conversion. My concern was not about speed, but about reliability. I just don't believe it is worthwhile to utilize file system when it can be done in memory. Are you sure that the filename will be unique even when you run several instances of mcs simultaneously ? 2. Please provide error tests for as many new error codes as possible. There are a lot of possible errors, but they are mapped to the same error code. BTW can I place invalid .ico and .res files in errors directory where the .cs files are? Yes, you can place there any files which you require for your test case. It's good practice to use same file name as is name of test file, just add some prefix. I prefer this method of code sharing instead of copying all the sources to every file. Please use reflection to get instance of your internal classes. I know you are using several fields, so if you really need them then a solution can be to introduce interface e.g. IResource with all required properties and methods and distribute only this interface file across. Of course, you will need some factory method to create this interface but that is the trivial part. The Resource Table generation code is included only in SRE. Also note that there are at least 7 classes (including DefaultResource that is the only one directly used by mcs) that are not included in SRE as mcs generates different default resource than SRE. And a lot of classes required by resource converter are not included in mcs as resource conversion is performed by SRE rather than mcs. I belive that it's better not to extend SRE with internal methods intended to public use if it can be achieved using public methods available in MS.NET as well. Whats the point of doing what you suggest? You are saying that all these files are not used by corlib ? --- mcs/mcs/mcs.exe.sources(revision 57534) +++ mcs/mcs/mcs.exe.sources(working copy) @@ -36,4 +36,31 @@ ../class/Mono.CompilerServices.SymbolWriter/MonoSymbolTable.cs ../class/Mono.CompilerServices.SymbolWriter/MonoSymbolWriter.cs ../class/corlib/Mono.Security.Cryptography/CryptoConvert.cs +../class/corlib/Mono.UnmanagedResources/BITMAPINFOHEADER.cs +../class/corlib/Mono.UnmanagedResources/DefaultResource.cs +../class/corlib/Mono.UnmanagedResources/IconInfoHeader.cs +../class/corlib/Mono.UnmanagedResources/ICONRESDIR.cs +../class/corlib/Mono.UnmanagedResources/NEWHEADER.cs +../class/corlib/Mono.UnmanagedResources/RESDIR.cs +../class/corlib/Mono.UnmanagedResources/ResInfo.cs +../class/corlib/Mono.UnmanagedResources/ResourceException.cs +../class/corlib/Mono.UnmanagedResources/ResourceFile.cs +../class/corlib/Mono.UnmanagedResources/RESOURCEHEADER.cs +../class/corlib/Mono.UnmanagedResources/ResourceIdentifier.cs +../class/corlib/Mono.UnmanagedResources/ResourceMemoryFlags.cs +../class/corlib/Mono.UnmanagedResources/ResourceName.cs +../class/corlib/Mono.UnmanagedResources/ResourceNode.cs +../class/corlib/Mono.UnmanagedResources/ResourceOrdinal.cs +../class/corlib/Mono.UnmanagedResources/ResourceStream.cs +../class/corlib/Mono.UnmanagedResources/ResourceTypes.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoBlock.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoBlockCollection.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoFileFlags.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoFileOSes.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoFileSubtypes.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoFileTypes.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoResource.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoString.cs +../class/corlib/Mono.UnmanagedResources/VersionInfoWordArray.cs +../class/corlib/Mono.UnmanagedResources/VS_FIXEDFILEINFO.cs +return ((languageId 16) | codePage).ToString(upperCase ? X8 : x8, CultureInfo.InvariantCulture); Please use constants instead of X8, x8 I don't really understand what you mean on using constants. I just don't know what these x8 and X8 strings are. If you declare constant with some explanatory name it will be easier to understand what they are used for. Marek ___ Mono-devel-list mailing list
[Mono-dev] [PATCH] SqliteDataReader should handle getting field type for null values
Hi! I encountered NullReferenceException from SqliteDataReader, when I have a query like select a, b, NULL, c, FROM xxx and I try to use reader.GetFieldType (2) for fetching info about columns (actually DataAdapter from MS.NET calls this method for every column in result) I attach a patch (test included) for fixing this. It works great in my app and it would be nice to have it official :) May I commit? -- Kamil Skalski http://nazgul.omega.pl Index: Mono.Data.SqliteClient/SqliteDataReader.cs === --- Mono.Data.SqliteClient/SqliteDataReader.cs (wersja 57661) +++ Mono.Data.SqliteClient/SqliteDataReader.cs (kopia robocza) @@ -368,7 +368,12 @@ int row = current_row; if (row == -1 rows.Count == 0) return typeof(string); if (row == -1) row = 0; - return ((object[]) rows[row])[i].GetType(); + object element = ((object[]) rows[row])[i]; + if (element != null) +return element.GetType(); + else +return typeof (string); + // Note that the return value isn't guaranteed to // be the same as the rows are read if different // types of information are stored in the column. Index: Mono.Data.SqliteClient/ChangeLog === --- Mono.Data.SqliteClient/ChangeLog (wersja 57661) +++ Mono.Data.SqliteClient/ChangeLog (kopia robocza) @@ -1,3 +1,8 @@ +2006-03-07 Kamil Skalski [EMAIL PROTECTED] + + * SqliteDataReader.cs: Handle null values in result as having + string type + 2006-02-10 Joshua Tauberer [EMAIL PROTECTED] * SqliteDataReader: Made 64bit clean. Patch from Index: Test/SqliteDataReaderTest.cs === --- Test/SqliteDataReaderTest.cs (wersja 57661) +++ Test/SqliteDataReaderTest.cs (kopia robocza) @@ -75,5 +75,26 @@ } } } + + [Test] + public void TypeOfNullInResultTest () + { + _conn.ConnectionString = _connectionString; + SqliteDataReader reader = null; + using (_conn) { +_conn.Open (); +SqliteCommand cmd = _conn.CreateCommand (); +cmd.CommandText = select null from test; +reader = cmd.ExecuteReader (); +try { + Assert.IsTrue (reader.Read()); + Assert.IsNotNull (reader.GetFieldType (0)); +} finally { + if (reader != null !reader.IsClosed) + reader.Close (); + _conn.Close (); +} + } + } } } Index: Test/ChangeLog === --- Test/ChangeLog (wersja 57661) +++ Test/ChangeLog (kopia robocza) @@ -1,3 +1,8 @@ +2006-03-07 Kamil Skalski [EMAIL PROTECTED] + + * SqliteDataReaderTest.cs: Add test for getting field type of null + value + 2006-01-29 Joshua Tauberer [EMAIL PROTECTED] * Added tests from Thomas Zoechling [EMAIL PROTECTED]. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] SqliteDataReader should handle getting field type for null values
Kamil Skalski wrote: I encountered NullReferenceException from SqliteDataReader, when I have a query like select a, b, NULL, c, FROM xxx and I try to use reader.GetFieldType (2) for fetching info about columns (actually DataAdapter from MS.NET calls this method for every column in result) I attach a patch (test included) for fixing this. It works great in my app and it would be nice to have it official :) May I commit? Please do! I'm wondering, tho, if wherever the adapter would return null, it should return a DBNull instead? Do other data adapters ever return 'null' values? -- - Joshua Tauberer http://taubz.for.net Unfortunately, we're having this discussion. It's too bad, because guess who listens to the discussion: the enemy. ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] SqliteDataReader should handle getting field type for null values
Please do! Done. I'm wondering, tho, if wherever the adapter would return null, it should return a DBNull instead? Do other data adapters ever return 'null' values? Your question have a ready answer here http://bugzilla.ximian.com/show_bug.cgi?id=77535 :) So DataReader should throw an exception on null values being fetched. The proper way of dealing with it is IsDBNull method, which is used by MS.NET DataAdapter when it analyse result. GetValue () should probably just return DBNull.Value, though I didn't test this. -- - Joshua Tauberer http://taubz.for.net Unfortunately, we're having this discussion. It's too bad, because guess who listens to the discussion: the enemy. -- Kamil Skalski http://nazgul.omega.pl ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] got a SIGSEGV
running mono 1.1.10.1 on gentoo 32bit on an SMP kernel 2.6.15 got the following error, ideas? = Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. = Stacktrace: in 0x4 (wrapper managed-to-native) System.String:InternalAllocateStr (int) in 0xff56 (wrapper managed-to-native) System.String:InternalAllocateStr (int) in 0x7e System.Text.StringBuilder:InternalEnsureCapacity (int) in 0x28 System.Text.StringBuilder:Append (char) in 0x31b System.Xml.XmlTextReader:ReadAttributeValueTokens (int) in 0xcb System.Xml.XmlTextReader:ReadAttributes (bool) in 0x128 System.Xml.XmlTextReader:ReadStartTag () in 0x14b System.Xml.XmlTextReader:ReadContent () in 0x179 System.Xml.XmlTextReader:ReadContent () in 0x115 System.Xml.XmlTextReader:Read () in 0x27 System.Xml.XmlReader:ReadStartElement () in 0x215 System.Runtime.Serialization.Formatters.Soap.SoapReader:Deserialize (System.IO.Stream,System.Runtime.Serialization.Formatters.ISoapMessage) in 0xaa System.Runtime.Serialization.Formatters.Soap.SoapFormatter:Deserialize ( System.IO.Stream,System.Runtime.Remoting.Messaging.HeaderHandler) in 0x12 System.Runtime.Serialization.Formatters.Soap.SoapFormatter:Deserialize ( System.IO.Stream) in 0x18b System.Runtime.Remoting.Channels.SoapServerFormatterSink:ProcessMessage (System.Runtime.Remoting.Channels.IServerChannelSinkStack,System.Runtime .Remoting.Messaging.IMessage,System.Runtime.Remoting.Channels.ITransport Headers,System.IO.Stream,System.Runtime.Remoting.Messaging.IMessage,Sys tem.Runtime.Remoting.Channels.ITransportHeaders,System.IO.Stream) in 0x4e System.Runtime.Remoting.Channels.Http.HttpServerTransportSink:DispatchRe quest (System.IO.Stream,System.Runtime.Remoting.Channels.ITransportHeaders,Sys tem.IO.Stream,System.Runtime.Remoting.Channels.ITransportHeaders) in 0x45 System.Runtime.Remoting.Channels.Http.HttpServerTransportSink:ServiceReq uest (System.Runtime.Remoting.Channels.Http.RequestArguments,System.IO.Stream ,System.Runtime.Remoting.Channels.ITransportHeaders) in 0x3ff System.Runtime.Remoting.Channels.Http.HttpServer:SendRequestForChannel ( System.Runtime.Remoting.Channels.Http.RequestArguments,System.Collection s.IDictionary,System.Collections.IDictionary,byte[]) in 0x15b System.Runtime.Remoting.Channels.Http.HttpServer:ProcessRequest (System.Runtime.Remoting.Channels.Http.RequestArguments) in 0xa System.Runtime.Remoting.Channels.Http.RequestArguments:Process () in 0xff459c60 (wrapper delegate-invoke) System.MulticastDelegate:invoke_void () in 0x168 System.Runtime.Remoting.Channels.RemotingThreadPool:PoolThread () in 0x1c948 (wrapper delegate-invoke) System.MulticastDelegate:invoke_void () in 0x50e59787 (wrapper runtime-invoke) System.Object:runtime_invoke_void (object,intptr,intptr,intptr) Native stacktrace: mono(mono_handle_native_sigsegv+0xc0) [0x8137cb0] mono [0x8125ff6] /lib/libpthread.so.0 [0xb7ee3fd9] [0xe440] mono [0x8100e32] mono [0x80fc725] mono [0x80fc3ca] mono [0x80fd21c] mono [0x80fd41c] mono [0x80ffae0] mono [0x80ffbe0] mono [0x80ffda2] mono(mono_string_new_size+0x3e) [0x808fece] mono [0x80c552a] [0xb7636c96] [0xb7636bc7] [0xb76389d1] [0xb730b9a4] [0xb730b1f4] [0xb730c629] [0xb730895c] [0xb730898a] [0xb730870e] [0xb679cce0] [0xb62f1e36] [0xb670d953] [0xb670d89b] [0xb670cac4] [0xb670c7af] [0xb670c606] [0xb670bd60] [0xb6709c2c] [0xb6709abb] [0xb72afe28] [0xb6709a59] [0xb72afe28] [0xb72cc741] mono [0x8125ea0] mono(mono_runtime_invoke+0x27) [0x808e1e7] mono(mono_runtime_delegate_invoke+0x38) [0x808e8c8] mono [0x80b40f5] mono [0x80f3500] mono [0x8107be4] /lib/libpthread.so.0 [0xb7ede14d] /lib/libc.so.6(__clone+0x5a) [0xb7e3f05a] ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
Re: [Mono-dev] [PATCH] New managed code for unmanaged (Win32)resourcehandling (SRE, PEAPI, MCS)
Hi, My concern was not about speed, but about reliability. I just don't believe it is worthwhile to utilize file system when it can be done in memory. Are you sure that the filename will be unique even when you run several instances of mcs simultaneously ? Now I understand that we did not understand each other previously regarding this question.:) I was speaking about .res to resource table conversion while you were speaking about the resource file generated by mcs. Several moths ago I wanted to modify GetTempFileName to use a 16-bit suffix to be fully MS.NET compatible but the result of the debate was to keep the 32-bit one as Linux has a single temp directory while Windows has per-user temp directories so a 16-bit suffix were possiblie insufficient while a 32-bit is likely to be enough. So I belive that mcs can obtain a unique file name. If not I think it is GetTempFileName that should be modified. I prefer using temporary resource files because this way we don't need non-public Mono-only functionality in SRE as we can use the public DefineUnmanagedResource method. I think that it's reliable. Yes, you can place there any files which you require for your test case. It's good practice to use same file name as is name of test file, just add some prefix. OK. Is it OK if I upload some tests for these expected error codes to SVN before they are available in mcs? You are saying that all these files are not used by corlib ? ... (file names) Please have a look at the modified corlib.dll.sources, PEAPI.dll.sources and mcs.exe.sources and you will see what files are needed by these assemblies. There are no unnecessary classes included in any of these lists so you can compare them. There are some basic, infrastructural classes like ResourceNode and ResourceStream that are common. PEAPI only uses .res to resource table conversion classes. mcs only uses .res generation classes with version info and icon support. SRE is the most compilcated it can convert .res to resource table and generate version info resource but that version info resource is a bit different than the one that is generated by mcs. So SRE has no icon support that means that mcs uses about 7 files that are not used by SRE. And of course a lot of files used by SRE are not required by mcs that are about 14 files. Note that unlike mcs that has a lot of classes in a single file I followed one class per source file desing in Mono.UnmanagedResources this is why there are so many source files. I just don't know what these x8 and X8 strings are. If you declare constant with some explanatory name it will be easier to understand what they are used for. These are standard numeric format strings so I don't think they should be documented or explained using constants. x8 is the number in hexadecimal with 8 digits at least (zero padded) in lower case. X8 is the same in upper case. As these format strings are passed directly to int.ToString() it isn't cryptic. I belive that these format strings are self-explanatory. I think providing some explanation is like providing explanation for {0}in string.Format(some {0} inserted, text). For more information please refer to http://msdn.microsoft.com/library/en-us/cpguide/html/cpconstandardnumericformatstrings.asp Kornél ___ Mono-devel-list mailing list Mono-devel-list@lists.ximian.com http://lists.ximian.com/mailman/listinfo/mono-devel-list
[Mono-dev] Re: [Mono-patches] r57679 - in trunk/mcs/class/corlib: System System.Globalization
I love the BIG FAT WARNING. Maybe should of used an ascii art bomb like this one to REALLY get the point across. ,--.!, __/ -*- ,d08b. '|` 0088MM `9MMP' -- Zac Bowling http://zacbowling.com/ - Message from [EMAIL PROTECTED] - Date: Tue, 7 Mar 2006 18:30:00 -0500 (EST) From: Peter Bartok ([EMAIL PROTECTED]) [EMAIL PROTECTED] Reply-To: Peter Bartok ([EMAIL PROTECTED]) [EMAIL PROTECTED] Subject: [Mono-patches] r57679 - in trunk/mcs/class/corlib: System System.Globalization To: mono-patches@lists.ximian.com, [EMAIL PROTECTED], [EMAIL PROTECTED] Author: pbartok Date: 2006-03-07 18:29:59 -0500 (Tue, 07 Mar 2006) New Revision: 57679 Modified: trunk/mcs/class/corlib/System.Globalization/ChangeLog trunk/mcs/class/corlib/System.Globalization/DateTimeFormatInfo.cs trunk/mcs/class/corlib/System/ChangeLog trunk/mcs/class/corlib/System/Environment.cs Log: 2006-03-07 Peter Dennis Bartok [EMAIL PROTECTED] * Environment.cs: Bumped corlib version to 48 (due to r57532) 2006-03-07 Peter Dennis Bartok [EMAIL PROTECTED] * DateTimeFormatInfo.cs: Restored original field order to allow some automatic locale fu to happen (mono unmanaged code relies on the field order to fill out DateTimeFormatInfo) Modified: trunk/mcs/class/corlib/System/ChangeLog === --- trunk/mcs/class/corlib/System/ChangeLog 2006-03-07 23:29:14 UTC (rev 57678) +++ trunk/mcs/class/corlib/System/ChangeLog 2006-03-07 23:29:59 UTC (rev 57679) @@ -1,3 +1,7 @@ +2006-03-07 Peter Dennis Bartok [EMAIL PROTECTED] + + * Environment.cs: Bumped corlib version to 48 (due to r57532) + 2006-03-07 Martin Baulig [EMAIL PROTECTED] * String.cs (String.FormatHelper): Try getting an `ICustomFormatter' Modified: trunk/mcs/class/corlib/System/Environment.cs === --- trunk/mcs/class/corlib/System/Environment.cs 2006-03-07 23:29:14 UTC (rev 57678) +++ trunk/mcs/class/corlib/System/Environment.cs 2006-03-07 23:29:59 UTC (rev 57679) @@ -59,7 +59,7 @@ * Changes which are already detected at runtime, like the addition * of icalls, do not require an increment. */ - private const int mono_corlib_version = 47; + private const int mono_corlib_version = 48; [MonoTODO] public enum SpecialFolder Modified: trunk/mcs/class/corlib/System.Globalization/ChangeLog === --- trunk/mcs/class/corlib/System.Globalization/ChangeLog 2006-03-07 23:29:14 UTC (rev 57678) +++ trunk/mcs/class/corlib/System.Globalization/ChangeLog 2006-03-07 23:29:59 UTC (rev 57679) @@ -1,3 +1,9 @@ +2006-03-07 Peter Dennis Bartok [EMAIL PROTECTED] + + * DateTimeFormatInfo.cs: Restored original field order to allow + some automatic locale fu to happen (mono unmanaged code relies + on the field order to fill out DateTimeFormatInfo) + 2006-03-02 Peter Dennis Bartok [EMAIL PROTECTED] * DateTimeFormatInfo.cs: Switched (where possible) our internal Modified: trunk/mcs/class/corlib/System.Globalization/DateTimeFormatInfo.cs === --- trunk/mcs/class/corlib/System.Globalization/DateTimeFormatInfo.cs 2006-03-07 23:29:14 UTC (rev 57678) +++ trunk/mcs/class/corlib/System.Globalization/DateTimeFormatInfo.cs 2006-03-07 23:29:59 UTC (rev 57679) @@ -53,6 +53,14 @@ private static DateTimeFormatInfo theInvariantDateTimeFormatInfo; + // + // BIG FAT WARNING: + // + // DO NOT ALTER THE NAME OR ORDER OF THESE FIELDS + // AND DO NOT INSERT ANY VARIABLES ANYWHERE BUT AT THE END + // SINCE MONO RELIES ON THE ORDER AND ON THE NAMES + // see mono/mono/metadata/verify.c + // private bool m_isReadOnly; private string amDesignator; private string pmDesignator; @@ -76,6 +84,18 @@ private string[] monthNames; private string[] abbreviatedMonthNames; + // FIXME: not supported other than invariant + private string [] allShortDatePatterns; + private string [] allLongDatePatterns; + private string [] allShortTimePatterns; + private string [] allLongTimePatterns; + private string [] monthDayPatterns; + private string [] yearMonthPatterns; + + // + // END OF BIG FAT WARNING + // + // MS Serialization needs this private int nDataItem; private bool m_useUserOverride; @@ -90,14 +110,6 @@ private string[] m_dateWords;