Marek Safar [Tue, 15 Feb 2011 13:15:31 +0000 (13:15 +0000)]
Update mcs translations
Marek Safar [Tue, 15 Feb 2011 13:14:03 +0000 (13:14 +0000)]
Fix monolite make dist
Atsushi Eno [Tue, 15 Feb 2011 13:11:22 +0000 (22:11 +0900)]
MessageHeaderDescription were not filled in message contract. Reject wrong contracts.
Atsushi Eno [Tue, 15 Feb 2011 13:10:09 +0000 (22:10 +0900)]
implement some ServiceHostBase public methods that already existed internally.
Marek Safar [Tue, 15 Feb 2011 12:11:28 +0000 (12:11 +0000)]
Add Mono.Debugger.Soft.dll to spec
Marek Safar [Tue, 15 Feb 2011 12:08:36 +0000 (12:08 +0000)]
Build monolite from correct location
Marek Safar [Mon, 14 Feb 2011 15:36:12 +0000 (15:36 +0000)]
Merge some useful changes from MD
Gonzalo Paniagua Javier [Tue, 15 Feb 2011 06:48:42 +0000 (01:48 -0500)]
[HttpListener] Close idle connections on Stop()
Idle connections that never received any data or had ever been
associated to a listener are properly closed now when the endpoint is
closed or the last listener they used is closed.
Fixes a bunch of tests in System.ServiceModel.
Atsushi Eno [Tue, 15 Feb 2011 06:47:46 +0000 (15:47 +0900)]
When the callback contract type is the same as the contract, do not block replies.
Atsushi Eno [Tue, 15 Feb 2011 06:47:22 +0000 (15:47 +0900)]
EndpointAddress could be empty on opening the factory.
Atsushi Eno [Tue, 15 Feb 2011 06:46:41 +0000 (15:46 +0900)]
PeeDuplex ChannelFactory must be opened in prior to create channels.
Atsushi Eno [Tue, 15 Feb 2011 06:45:58 +0000 (15:45 +0900)]
add private setter for message serialization.
Not sure if it is hack or required-to-do though.
Neale Ferguson [Mon, 14 Feb 2011 20:17:07 +0000 (15:17 -0500)]
Merge branch 'master' of github.com:mono/mono
Veerapuram Varadhan [Mon, 14 Feb 2011 19:51:28 +0000 (01:21 +0530)]
[bugfix]667855 - Fix handling of oracle raw data types sanely.
Gonzalo Paniagua Javier [Mon, 14 Feb 2011 19:36:14 +0000 (14:36 -0500)]
[HttpWebRequest] EndGetResponse already does this.
Gonzalo Paniagua Javier [Mon, 14 Feb 2011 19:34:47 +0000 (14:34 -0500)]
[HttpListener] UserHostName includes the port.
Jérémie Laval [Mon, 14 Feb 2011 18:16:51 +0000 (18:16 +0000)]
Correctly add ObjectPool to the build
Jérémie Laval [Mon, 14 Feb 2011 18:12:13 +0000 (18:12 +0000)]
Use ObjectPool in SplitOrderedList
Jérémie Laval [Mon, 14 Feb 2011 18:11:42 +0000 (18:11 +0000)]
Fix wrong CAS check in SplitOrderedList
Jérémie Laval [Mon, 14 Feb 2011 18:10:42 +0000 (18:10 +0000)]
Use ObjectPool in ConcurrentStack
Jérémie Laval [Mon, 14 Feb 2011 18:10:21 +0000 (18:10 +0000)]
Use ObjectPool in ConcurrentQueue
Jérémie Laval [Mon, 14 Feb 2011 18:09:38 +0000 (18:09 +0000)]
Add concurrent implementation of an ObjectPool to reuse small objects like Node instances
Gonzalo Paniagua Javier [Mon, 14 Feb 2011 17:29:26 +0000 (12:29 -0500)]
[HttpListener] These lines were not supposed to be there.
Atsushi Eno [Mon, 14 Feb 2011 16:54:13 +0000 (01:54 +0900)]
support UdpTranspoerSettings.MulticastInterfaceId. This should fix bug #669328.
Carsten Schlote [Fri, 12 Nov 2010 15:56:46 +0000 (16:56 +0100)]
Extended CloneCopy() test with ReadOnly field
- It is recommended to set auto-increment fields to ReadOnly. When
calling Copy() the check for ReadOnly must be omitted, otherwise
you get an exception.
The RadOnly attribute is set for the parent "Id" field to test
proper handling of read-only fields.
- Source reindention and cleanups.
Signed-off-by: Carsten Schlote <schlote@vahanus.net>
Carsten Schlote [Thu, 11 Nov 2010 16:35:41 +0000 (17:35 +0100)]
Fixes for broken RO check
- When calling GetChanges() the ReadOnly check for DataCalumns must be
turned off, as otherwise data of readonly columns can't be cloned
into new rows for the new created DataSet/dataTable
Signed-off-by: Carsten Schlote <schlote@vahanus.net>
Miguel de Icaza [Mon, 14 Feb 2011 15:03:45 +0000 (10:03 -0500)]
Remove
Miguel de Icaza [Mon, 14 Feb 2011 14:38:02 +0000 (09:38 -0500)]
[670974] Use the underlying BaseStream to read bytes instead of trying to peek a character.
Peeking a character as it turns out is a really bad idea as it involves the encoder
to pull characters. If the PeekChar happens to read a byte that is part of a
UTF8 string that needs more characters to process we would end up with the reported
crash.
Atsushi Enomoto tracked this down, and the fix is to use the binaryreader.BaseStream
to directly call into ReadByte and Read without ever probing with PeekChar (). It
is not really possible to use BinaryReader.ReadByte since this one can throw on
end-of-buffer conditions instead of returning -1
Neale Ferguson [Mon, 14 Feb 2011 14:31:38 +0000 (09:31 -0500)]
Merge branch 'master' of github.com:mono/mono
Neale Ferguson [Mon, 14 Feb 2011 14:31:00 +0000 (09:31 -0500)]
Add unwind support to s390x and fix stack unwinding so that exception17 now passes
Marek Safar [Mon, 14 Feb 2011 13:15:59 +0000 (13:15 +0000)]
New test
Marek Safar [Mon, 14 Feb 2011 12:42:22 +0000 (12:42 +0000)]
[671552] Use correct emit method for stobj type
Miguel de Icaza [Mon, 14 Feb 2011 13:17:25 +0000 (08:17 -0500)]
Do not build in parallel
Marek Safar [Mon, 14 Feb 2011 12:18:58 +0000 (12:18 +0000)]
Update to the latest IKVM
Gonzalo Paniagua Javier [Mon, 14 Feb 2011 00:51:23 +0000 (19:51 -0500)]
Comment out test that does not work on linux.
Gonzalo Paniagua Javier [Sun, 13 Feb 2011 20:01:29 +0000 (15:01 -0500)]
[HttpWebRequest] Use the timeout in GetResponse()
The timeout was not being used in GetResponse.
Fixes bug #603794.
Gonzalo Paniagua Javier [Sun, 13 Feb 2011 19:53:08 +0000 (14:53 -0500)]
[HttpWebRequest] Avoid nullref on empty cookie header.
If the Set-Cookie header is empty, the cookie instance is not created.
Fixes bug #670189.
Rodrigo Kumpera [Sun, 13 Feb 2011 18:52:02 +0000 (19:52 +0100)]
Don't assert on broken DM names.
* reflection.c (reflection_methodbuilder_to_mono_method):
Avoid asserting if the method name has invalid surrogates.
Fixes #643372.
Rodrigo Kumpera [Sun, 13 Feb 2011 18:50:28 +0000 (19:50 +0100)]
Add bad string resistent utf16-utf8 conversions.
* object.c: Add _ignore versions of the mono_string_to_utf8
family of functions that work with broken strings by
encoding them on a best effort basis.
Rodrigo Kumpera [Sun, 13 Feb 2011 18:48:01 +0000 (19:48 +0100)]
Avoid an infinite loop on broken utf16.
* gutf8.c (g_utf16_to_utf8): Increase the input counter
when encountering broken surrogates head or tails to
make sure we don't end in an infinite loop.
Rodrigo Kumpera [Sun, 13 Feb 2011 18:33:35 +0000 (19:33 +0100)]
Make Int32.Parse respect current culture.
* Int32.cs (Parse): Repect current culture for
positive and negative signs.
Fixes #586085
Alexandre Mutel [Sun, 13 Feb 2011 15:14:55 +0000 (16:14 +0100)]
Fix sizeof(T) in non-gshared code. Fixes #580189.
Mark Probst [Sun, 13 Feb 2011 15:10:10 +0000 (16:10 +0100)]
Merge branch 'bugfix-main-thread-root'
Zoltan Varga [Sun, 13 Feb 2011 15:03:54 +0000 (16:03 +0100)]
Add an assembly version to Mono.Debugger.Soft. Fixes #671536.
Mark Probst [Sun, 13 Feb 2011 14:47:50 +0000 (15:47 +0100)]
[sgen] Register the main_thread as a GC root. Fixes shutdown crashes.
Gonzalo Paniagua Javier [Sun, 13 Feb 2011 13:13:13 +0000 (08:13 -0500)]
[HttpListener] Small improvements
Less allocations in managed and unmanaged code.
Gonzalo Paniagua Javier [Sun, 13 Feb 2011 12:06:55 +0000 (07:06 -0500)]
[HttpListenre] Avoid multiple calls to Close()
HttpListenerResponse could be calling HttpConnection.Close() more than
once.
Zoltan Varga [Sun, 13 Feb 2011 03:23:20 +0000 (04:23 +0100)]
Fix reading of cattr arguments of type Type[]. Fixes #670331.
Miguel de Icaza [Sun, 13 Feb 2011 03:09:49 +0000 (22:09 -0500)]
Add solution files
Miguel de Icaza [Sun, 13 Feb 2011 03:07:05 +0000 (22:07 -0500)]
Various updates
Miguel de Icaza [Sat, 12 Feb 2011 21:30:18 +0000 (16:30 -0500)]
Pass warnings
Miguel de Icaza [Sat, 12 Feb 2011 06:31:20 +0000 (01:31 -0500)]
Visual Studio build support: updated the scripts that generate csproj files.
With the new C# compiler, the build complexity is vastly reduced, the new setup
is able to produce many of the csproj files.
The next step is to generate a couple of solutions:
* BootstrapSolution: to build the basic assemblies used to
build the rest of Mono from a set of basic assemblies.
This should be run to prepare a tree.
* 2.0 solution: builds the various 2.0 libraries and executables
* 4.0 solution: builds the various 4.0 libraries and executables
Installation: where should the resulting assemblies go once they are built?
Where should the assemblies go after the build is complete?
How do we turn a build into an redistributable package?
Gonzalo Paniagua Javier [Sat, 12 Feb 2011 05:03:33 +0000 (00:03 -0500)]
[gzip] Allow partial flush
When Flush() is called explicitly, do a Z_PARTIAL_FLUSH to force gzip
into giving us whatever is available. Less efficient, but compatible
with MS.
Miguel de Icaza [Fri, 11 Feb 2011 23:47:49 +0000 (18:47 -0500)]
Update the csproj generator targets
Gonzalo Paniagua Javier [Fri, 11 Feb 2011 23:35:29 +0000 (18:35 -0500)]
[Socket] Fix invalid cast
Fix invalid cast when canceling pending operations due to socket.Close.
Thomas Goldstein [Fri, 11 Feb 2011 23:12:54 +0000 (00:12 +0100)]
TabControlPainter.cs: Move up the Text / Image of the selected tab, matching .NET.
Thomas Goldstein [Fri, 11 Feb 2011 23:08:01 +0000 (00:08 +0100)]
TabControlPainter.cs: Horizontally center Text and Image when SizeMode = Fixed.
Zoltan Varga [Fri, 11 Feb 2011 23:14:44 +0000 (00:14 +0100)]
Fix token generation for TypeBuilder's in another assembly. Fixes #671245.
Miguel de Icaza [Fri, 11 Feb 2011 22:34:23 +0000 (17:34 -0500)]
[fix] changing Form.Enabled sometimes can change the list of OpenForms, fixes 671098
Andrius Bentkus [Sat, 29 Jan 2011 15:35:46 +0000 (16:35 +0100)]
Check filename of assemblies before installing with gacutil.
gacutil just used the filename (which can be different compared to
the assembly name) in order to install assemblies, though afterwards
entirely relied on the filename to be equal to the assembly name.
In other words, installing assemblies where the filename differed
from the assembly name resulted in an incorrect install: the
files were not visible in the GAC.
Example: gacutil -i mysql.data.dll
Wouldn't return any errors, but the assembly (which is called MySql.Data)
still couldn't be reached.
This patch will check for filename compliance and return an error
if it does not comply, which will look like this:
Failure adding assembly v4/mysql.data.dll to the cache: the filename "mysql.data.dll" doesn't match the assembly name "MySql.Data"
A warning is not sufficient, since it will be impossible to remove
the installed junk with gacutil.
Zoltan Varga [Fri, 11 Feb 2011 20:57:25 +0000 (21:57 +0100)]
Add Mono.XBuild.Utilities/MSBuildUtils.cs to the build.
Zoltan Varga [Fri, 11 Feb 2011 20:48:42 +0000 (21:48 +0100)]
Pretty print MonoString* too in xdb.
Sebastien Pouliot [Fri, 11 Feb 2011 18:10:21 +0000 (13:10 -0500)]
Continue X509Chain processing even if the local machine directory does not exists
* corlib/Mono.Security.X509/X509Store.cs:
* Mono.Security/Mono.Security.X509/X509Store.cs:
Fix key pair persistence to load key pairs from the same location
(machine or user) as the requested certificate. This avoids an
internal exception (on missing local machine directory) that stop
the evaluation of the certificate validity (i.e. no user store
check)
* System/System.Security.Cryptography.X509Certificates/X509Chain.cs:
Ensure that a missing local machine directory does not result in a NRE
while loading CRL (which would fail the certificate being validated)
Hib Eris [Wed, 9 Feb 2011 15:58:09 +0000 (16:58 +0100)]
Earlier undefine HAVE_GETPROCESSID when cross compiling
Zoltan Varga [Fri, 11 Feb 2011 14:25:09 +0000 (15:25 +0100)]
Avoid a boehm dependency in driver.c.
Rodrigo Kumpera [Fri, 11 Feb 2011 13:51:59 +0000 (14:51 +0100)]
Make maxStackSize behavior compatible with MS.
* Thread.cs (.ctor): Check if maxStackSize is negative
and raise and AOORE. Silently use a saner minimum size
of 128k as mono can't really run with much less than that.
Marek Safar [Fri, 11 Feb 2011 12:02:24 +0000 (12:02 +0000)]
Fix repl not to accumulate every evaluated expression
Zoltan Varga [Fri, 11 Feb 2011 04:50:42 +0000 (05:50 +0100)]
Make the wait in the finalizer thread alertable to fix sdb on windows. Fixes #670619.
Zoltan Varga [Fri, 11 Feb 2011 02:37:25 +0000 (03:37 +0100)]
Fix sdb tests on the 4.0 profile.
Zoltan Varga [Fri, 11 Feb 2011 00:32:54 +0000 (01:32 +0100)]
Change some Sleep(0)'s to Sleep(1) in the soft-debugger code to avoid 100% cpu utilization on windows.
Zoltan Varga [Fri, 11 Feb 2011 00:28:01 +0000 (01:28 +0100)]
Add a MONO_ prefix to the PROCESSOR_ARCHITECTURE_ constants to fix the mirriad warnings on windows.
Miguel de Icaza [Thu, 10 Feb 2011 23:55:29 +0000 (18:55 -0500)]
[bugfix: 664695] Calling Dispose on ToolStrip emit events. Doesn't on .NET
Miguel de Icaza [Thu, 10 Feb 2011 23:54:13 +0000 (18:54 -0500)]
[bugfix: 664695] Calling Dispose on ToolStrip emit events. Doesn't on .NET
Miguel de Icaza [Thu, 10 Feb 2011 23:53:00 +0000 (18:53 -0500)]
[bugfix: 665233] ToolStrip Menus Keeping Keyboard Capture after hovering over SubMenu
Zoltan Varga [Thu, 10 Feb 2011 23:34:45 +0000 (00:34 +0100)]
Merge branch 'mips-vm-fixes' of https://github.com/ztzg/mono into ztzg-mips-vm-fixes
Zoltan Varga [Thu, 10 Feb 2011 23:33:19 +0000 (00:33 +0100)]
Include malloc.h under windows for alloca in glib.h.
Damien Diederen [Mon, 7 Feb 2011 22:22:40 +0000 (23:22 +0100)]
MIPS: Ignore float->int overflow behaviour, as on PPC, ARM, and SPARC
From the comment:
$TARGET handles overflow by clipping, but this test assumes no overflow
handling. According to ECMA the result of float->int conversion is undefined
if overflow occurs, so both behaviours are valid.
Commit contributed under the MIT/X11 license.
Damien Diederen [Mon, 7 Feb 2011 21:56:35 +0000 (22:56 +0100)]
MIPS: Do not generate superfluous "load_const" in IMT thunks
1. Only three of the four branches need 'load_const's, so let's move
them down there;
2. The fourth one already contains its own 'load_const'; the new code
avoids a duplicate load before each binary search test.
Commit contributed under the MIT/X11 license.
Damien Diederen [Mon, 7 Feb 2011 21:47:15 +0000 (22:47 +0100)]
MIPS: Fix IMT binary search code generation in backend
Imt_emit_ir, in object.c, generates binary search code for sequences
longer than three elements. It saves the key of the mid item, then
recursively calls itself on the two halves of the segment:
item->key = sorted_array [middle]->key;
...
imt_emit_ir (sorted_array, start, middle, out_array);
item->check_target_idx = imt_emit_ir (sorted_array, middle, end, out_array);
Note how the mid item itself is included in the second half: it is to
be handled as part of that subsequence, whose code starts at index
'check_target_index'.
Given such a piece of binary search IR, the MIPS backend currently
generates:
load_const (temp, item->key);
slt (temp, temp, IMT_REG); ; temp = key < searched_for;
bne (temp, zero, 0); ; if (temp) jump_target_index ();
This is broken because no jump happens if (key == searched_for). The
target method won't be found in the first subtree, so the runtime will
end up jumping to its last method instead of the correct one!
This patch causes the following sequence to be emitted:
load_const (temp, item->key);
slt (temp, IMT_REG, temp); ; temp = searched_for < key;
beq (temp, zero, 0); ; if (!temp) jump_target_index ();
Commit contributed under the MIT/X11 license.
Damien Diederen [Thu, 3 Feb 2011 20:50:38 +0000 (21:50 +0100)]
MIPS: Fix unboxing trampolines for functions returning value types
Generated methods always place 'this' in a0, but unboxing trampolines
currently bump a1 for functions returning value types (the register
assignments for 'this' and return area pointers probably got swapped
at some point, but the trampoline generator was not updated).
Fix that by always bumping a0.
Commit contributed under the MIT/X11 license.
Damien Diederen [Wed, 2 Feb 2011 20:13:38 +0000 (21:13 +0100)]
MIPS: Use SLTU to implement COND_EXC_LE_UN (Exception when <= unsigned)
The current code generator uses a SUBU/BLEZ combination, but this
breaks for non-zero-based arrays. Given a lower bound 'b', length
'l', and an index 'i', Mini generates:
real_i = i - b;
COND_EXC_LE_UN(l, real_i);
Without this patch, the backend generates for e.g. b=42, l=1 and i=0:
SUBU real_i, 0, 42 => -42
SUBU at, 1, real_i => 43 (U only means "no trap.")
BLEZ at, throw => No throw because at is positive!
This causes the following sequence to be used instead:
SUBU real_i, 0, 42 => -42
SLTU at, real_i, 1 => 0 (Unsigned '<'; real_i is a large value)
BEQ at, zero, throw => Throw.
Commit contributed under the MIT/X11 license.
Damien Diederen [Tue, 1 Feb 2011 21:16:59 +0000 (22:16 +0100)]
MIPS: Throw OverflowException if Int32.MinValue is divided by -1
Without this, the code throws the more general ArithmeticException
when the divisor is -1, independently of the dividend. The check is
necessary because -Int32.MinValue does not fit into a 32-bit two's
complement integer.
Commit contributed under the MIT/X11 license.
Zoltan Varga [Thu, 10 Feb 2011 22:43:04 +0000 (23:43 +0100)]
Remove unused mono_arch_has_unwind_info () function.
Gonzalo Paniagua Javier [Thu, 10 Feb 2011 22:17:26 +0000 (17:17 -0500)]
[HttpWebRequest] Can't ignore erros here
Gonzalo Paniagua Javier [Thu, 10 Feb 2011 21:57:20 +0000 (16:57 -0500)]
[HttpWebRequest] Error handling for POST/PUT
When we get an error from the server before writing an entire
unbuffered response, the server might close the connection leading to
write errors. Ignore those and return the actual HTTP status code from
the original server error.
Ankit Jain [Thu, 10 Feb 2011 20:01:44 +0000 (01:31 +0530)]
[xbuild] Update Utilities.FromMSBuildPath from monodevelop.
Updating FromMSBuildPath also fixes a bug on windows.
* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Utilities.cs:
Move to..
* Microsoft.Build.Utilities/Mono.XBuild.Utilities/MSBuildUtils.cs:
.. this. Also, update FromMSBuildPath from monodevelop.
* Update Engine/* and Tasks/* to track the new api.
Rodrigo Kumpera [Thu, 10 Feb 2011 20:18:27 +0000 (21:18 +0100)]
Handle ConstructorBuilders on other assemblies.
* reflection.c (mono_image_get_ctorbuilder_token):
Handle non generic CtorBuilder on another assembly.
Fixes #670949
Rodrigo Kumpera [Thu, 10 Feb 2011 20:44:58 +0000 (21:44 +0100)]
Revert "Don't use io layer semaphores for object monitors."
This reverts commit
7d0e224a7a67b32b214e7eadcc2089708bbd3914.
This is causing severe regressions on OSX.
Rodrigo Kumpera [Wed, 9 Feb 2011 17:56:38 +0000 (18:56 +0100)]
Don't use io layer semaphores for object monitors.
* monitor.c: Use a system semaphone instead of io-layer
semaphores as it has a much lower overhead.
Rodrigo Kumpera [Wed, 9 Feb 2011 17:40:19 +0000 (18:40 +0100)]
Add regression test for #668506
Marek Safar [Thu, 10 Feb 2011 19:04:02 +0000 (19:04 +0000)]
Another .net 4 update
Marek Safar [Thu, 10 Feb 2011 19:03:33 +0000 (19:03 +0000)]
Remove more csharp2 references
Zoltan Varga [Thu, 10 Feb 2011 15:17:44 +0000 (16:17 +0100)]
Fix a warning.
Marek Safar [Thu, 10 Feb 2011 13:34:39 +0000 (13:34 +0000)]
Make all evaluator created type public
Marek Safar [Thu, 10 Feb 2011 12:21:12 +0000 (12:21 +0000)]
Add mscorlib as mcs aot dependency
Atsushi Eno [Thu, 10 Feb 2011 13:06:17 +0000 (22:06 +0900)]
Fix a couple of addressing namespace fixes (found in April2005 version).
Atsushi Eno [Thu, 10 Feb 2011 12:16:17 +0000 (21:16 +0900)]
Fix wrong async completion handling in UDP channel receive.
After AsyncWaitHandle.Set(), order of filling results and WaitOne() are
undefined.
Marek Safar [Thu, 10 Feb 2011 09:22:04 +0000 (09:22 +0000)]
Fixes build
Marek Safar [Thu, 10 Feb 2011 08:58:16 +0000 (08:58 +0000)]
Enable eval statements
Marek Safar [Thu, 10 Feb 2011 08:53:44 +0000 (08:53 +0000)]
Drop csharp2