Miguel de Icaza [Sun, 1 May 2011 21:59:29 +0000 (14:59 -0700)]
Merge pull request #90 from nulltoken/patch-1.
[XBuild) Make RemoveDir task able to recursively delete the content of a directory
Miguel de Icaza [Sun, 1 May 2011 21:18:47 +0000 (17:18 -0400)]
Update SGen sources to SGen license
Mark Probst [Sun, 1 May 2011 18:50:34 +0000 (20:50 +0200)]
Merge branch 'sgen-lock-free-alloc'
Mark Probst [Sun, 1 May 2011 18:45:50 +0000 (20:45 +0200)]
[utils] Document the lock-free allocator.
Mark Probst [Sat, 23 Apr 2011 15:50:43 +0000 (17:50 +0200)]
[sgen] Make sure remset clearing doesn't crash if we change thread unregistering.
Mark Probst [Sat, 23 Apr 2011 16:19:36 +0000 (18:19 +0200)]
[sgen] Attach thread info early so that hazard pointers are available.
Mark Probst [Sat, 23 Apr 2011 10:53:59 +0000 (12:53 +0200)]
[sgen] Use the lock free allocator as the internal allocator for SGen.
Mark Probst [Fri, 22 Apr 2011 19:24:28 +0000 (21:24 +0200)]
[utils] Added lock-free queue and allocator.
Chris Toshok [Sun, 1 May 2011 06:11:32 +0000 (23:11 -0700)]
[eglib] make g_mkdir_with_parents work for paths not ending in /
Geoff Norton [Sat, 30 Apr 2011 15:48:44 +0000 (11:48 -0400)]
Avoid doubly declaring some types in the 2.1 profile for mobile
Gonzalo Paniagua Javier [Sat, 30 Apr 2011 09:33:00 +0000 (11:33 +0200)]
Fix prefix selection
We were picking the wrong prefix when the URL matched the path.
Fixes bug #688860.
Gonzalo Paniagua Javier [Sat, 30 Apr 2011 09:07:56 +0000 (11:07 +0200)]
Support FTP + RETR + proxy
Fixes bug #690887.
Jeffrey Stedfast [Sat, 30 Apr 2011 00:25:58 +0000 (20:25 -0400)]
Don't return values in functions returning void
Rodrigo Kumpera [Fri, 29 Apr 2011 20:47:24 +0000 (17:47 -0300)]
Introduce a couple of functions to abstract old and new interrupt machinery.
* threads.c: Move code around to make it easier to have both
old and new machinery around.
Geoff Norton [Fri, 29 Apr 2011 20:23:15 +0000 (16:23 -0400)]
[boehm] Avoid a ENOMEM when allocating across an unallocated page
A very rare allocation pattern could cause the boehm free list to call
the GC_unmap_gap function, which actually calls down into munmap().
Darwins virtual memory manager will return a KERN_INVALID_ADDRESS
which is translated into a ENOMEM, if mprotect attempts to change
the protection of a range which includes an unallocated page.
We address this by just mmap() back to ANON, instead of actually
unallocating the page.
Rodrigo Kumpera [Fri, 29 Apr 2011 20:01:23 +0000 (17:01 -0300)]
Make SMR available during the whole registration/unregister.
* hazard-pointer.c (mono_hazard_pointer_get): Use
mono_thread_info_get_small_id to get the small id
instead of reading it from the thread info since it
might be gone during unregister.
* mono-threads.c: Add new TLS key to to hold the small
id so we can have it available during unregister. This is
needed since pthreads cleans up the thread_info TLS before
calling it's cleanup function which, in turn, renders SMR
unavailable.
The new lock-free allocator requires it so we need to make
SMR available for all runtime callbacks.
Rodrigo Kumpera [Fri, 29 Apr 2011 15:59:49 +0000 (12:59 -0300)]
Make thread unregister more robust.
* mono-threads.c (unregister_thread): Remove
the dying thread from the thread list before
doing the gc callback. This avoid some potential
trouble if a GC happens in the meanwhile.
Rodrigo Kumpera [Fri, 29 Apr 2011 15:58:25 +0000 (12:58 -0300)]
Allow external memory management of nodes.
* mono-linked-list-set.c (mono_lls_init): If
free_node_func is null, the caller of remove is reponsible
for reclaiming memory.
Alan McGovern [Thu, 28 Apr 2011 10:14:55 +0000 (11:14 +0100)]
[GCHandle] Refactor so == and != do not box unnecessarily.
Gonzalo Paniagua Javier [Fri, 29 Apr 2011 09:53:19 +0000 (11:53 +0200)]
[webclient] Process uri.UserInfo when present
If there are no crendetials, the Uri might have them.
Based on a patch by QuickJack.
Fixes bug #688007.
Geoff Norton [Fri, 29 Apr 2011 03:05:15 +0000 (23:05 -0400)]
Avoid a needless buffer copy that is susceptible to overflow
Chris Toshok [Thu, 28 Apr 2011 22:07:51 +0000 (15:07 -0700)]
[eglib] add some more MAX/MIN macros
Geoff Norton [Thu, 28 Apr 2011 22:07:17 +0000 (18:07 -0400)]
Fix a typo for Rodrigo
Zoltan Varga [Thu, 28 Apr 2011 21:45:43 +0000 (23:45 +0200)]
Fix loading from volatile base addresses in the LLVM backend. Fixes #690020.
Sebastien Pouliot [Thu, 28 Apr 2011 20:33:12 +0000 (16:33 -0400)]
Fix remaining moon-unit failures wrt Sockets changes
* System.Net.Sockets/Socket_2_1.cs: Ensure RemoteEndPoint is always
available after ConnectAsync (connected or not, allowed or not).
Ensure the Connect event is fired even if denied by policy.
Sebastien Pouliot [Thu, 28 Apr 2011 20:28:34 +0000 (16:28 -0400)]
Fix copy-paste error in git
17085447
* System.Net.Sockets/Socket_2_1.cs: Fix some moved code (from
SocketAsyncEventArgs.cs) so should the references to RemoteEndPoint
still point to the SocketAsyncEventArgs instance. Fix some moon-unit
test failures
Rodrigo Kumpera [Thu, 28 Apr 2011 21:05:34 +0000 (18:05 -0300)]
Fix posix
Rodrigo Kumpera [Thu, 28 Apr 2011 20:39:19 +0000 (17:39 -0300)]
Fix small buglets
Rodrigo Kumpera [Thu, 28 Apr 2011 20:35:57 +0000 (17:35 -0300)]
Document the current limitations of the async call API
Rodrigo Kumpera [Thu, 28 Apr 2011 20:19:28 +0000 (17:19 -0300)]
Implement async invocation API.
* mono-threads.c: Add mono_thread_info_setup_async_call
which allows to inject an async call into a suspended thread.
It only works reliably when a managed frame is the tos.
* mono-threads-mach.c:
* mono-threads-posix.c: Implement async call injection.
Zoltan Varga [Thu, 28 Apr 2011 20:26:53 +0000 (22:26 +0200)]
Revert "Modify fixup_cattrs () to handle a corner case where a cattr is created using a MonoCMethod instead of a ConstructorBuilder. Fixes #689533."
This reverts commit
6bd851a7a3d0f9cf5c0e991397432a17a6cf4526.
This seems to break smcs.
Jeffrey Stedfast [Thu, 28 Apr 2011 20:04:11 +0000 (16:04 -0400)]
Fixed g_utf8_validate(), needed to break in inner switch
Lluis Sanchez [Thu, 28 Apr 2011 16:28:11 +0000 (18:28 +0200)]
[Web.Services] Add support for optional parameters
Non-nullable web service parameters can be made optional by
adding an additional parameter with the same name and a
'Specified' suffix. This was supported when serializing
classes, but not when serializing web service parameters.
This might fix bug 688496.
Sebastien Pouliot [Thu, 28 Apr 2011 15:20:41 +0000 (11:20 -0400)]
Add entries for MD4 in machine.config (fix #682619)
Atsushi Eno [Thu, 28 Apr 2011 14:40:00 +0000 (23:40 +0900)]
Looks like xs:any is allowed under certain condition in XsdDataContractImporter.
But I don't understand why :(
Atsushi Eno [Thu, 28 Apr 2011 13:08:08 +0000 (22:08 +0900)]
moonlight does not like XmlSchemaType but nasty code in KnownTypeCollection :(
Marek Habersack [Thu, 28 Apr 2011 12:25:59 +0000 (14:25 +0200)]
[system.data.services] Stubs for a few 4.0 types + some implementation + some tests
Marek Habersack [Thu, 28 Apr 2011 12:52:01 +0000 (05:52 -0700)]
Merged pull request #91 from skolima/master.
Fix the build that I broke
Leszek 'skolima' Ciesielski [Thu, 28 Apr 2011 12:36:06 +0000 (14:36 +0200)]
fixing the build
Atsushi Eno [Thu, 28 Apr 2011 11:31:24 +0000 (20:31 +0900)]
...and do return Type for all known xs:* types in XsdDataContractImporter.
Atsushi Eno [Thu, 28 Apr 2011 11:06:14 +0000 (20:06 +0900)]
Do not reject xsd:* types that are not listed in KnownTypeCollection.
e.g. xs:token.
Atsushi Eno [Thu, 28 Apr 2011 10:52:08 +0000 (19:52 +0900)]
support <service>-less wsdls in svcutil. Look for portTypes instead.
Alan McGovern [Thu, 28 Apr 2011 09:46:32 +0000 (10:46 +0100)]
[moonlight] Ensure we don't double-build the "build" profile now
Atsushi Eno [Thu, 28 Apr 2011 08:35:38 +0000 (17:35 +0900)]
Extend supported XmlDateTimeSerialization formats. Fixed bug #690475.
Rodrigo Kumpera [Thu, 28 Apr 2011 06:51:37 +0000 (03:51 -0300)]
New mach support code to support setting thread context.
* mach-support.h: Add mono_mach_arch_mcontext_to_thread_state
and mono_mach_arch_set_thread_state.
* mach-support-x86.c:
* mach-support-amd64.c:
* mach-support-arm.c: Implement arch specific versions of those
new functions.
Atsushi Eno [Thu, 28 Apr 2011 06:41:27 +0000 (15:41 +0900)]
XmlSerializer code generator was generating wrong char literal.
Fixed bug #673019.
Atsushi Eno [Thu, 28 Apr 2011 05:59:13 +0000 (14:59 +0900)]
Implement some properties in XamlObjectWriterSettings. Fixed bug #689548.
Gonzalo Paniagua Javier [Thu, 28 Apr 2011 04:01:10 +0000 (00:01 -0400)]
[socket] More BeginConnect (IPAddress []) work
When trying multiple addresses, the second and sucessive calls to
BeginConnect(IPAddress) will cause an error which we would have to
ignore and then retry. Since this behavior is not documented, we just
close the socket and open a new one for retries is there is already a
pending connect attempt.
Jeffrey Stedfast [Thu, 28 Apr 2011 00:55:02 +0000 (20:55 -0400)]
Fixed g_iconv() decoders/encoders for unaligned accesses
Chris Toshok [Wed, 27 Apr 2011 21:21:05 +0000 (14:21 -0700)]
Merge branch 'master' of github.com:mono/mono
Chris Toshok [Wed, 27 Apr 2011 21:17:15 +0000 (14:17 -0700)]
fix the moon build with -j 4
Mark Probst [Wed, 27 Apr 2011 21:07:43 +0000 (23:07 +0200)]
[utils] Make delayed free table not wait to truly make it lock-free.
Waiting for another thread is really just a custom lock
implementation, so it suffers from the same problems, among them that
an interrupted thread can deadlock the system.
Marek Habersack [Wed, 27 Apr 2011 20:24:36 +0000 (13:24 -0700)]
Merged pull request #88 from skolima/msbuild-merge.
[MSBuild] Add Microsoft.Build for 4.0 profile
Leszek 'skolima' Ciesielski [Sun, 13 Feb 2011 14:32:05 +0000 (15:32 +0100)]
[MSBuild] Add Microsoft.Build for 4.0 profile
Namespace Microsoft.Build.Construction partiallly implemented,
enought to construct and save a valid project file. Some
tests present (work on .Net).
Rodrigo Kumpera [Wed, 27 Apr 2011 20:21:43 +0000 (13:21 -0700)]
Merged pull request #58 from XTZGZoReX/master.
Set Mono.Cairo calling conventions to Cdecl explicitly
Rodrigo Kumpera [Wed, 27 Apr 2011 18:44:59 +0000 (15:44 -0300)]
Make mono_install_handler_block_guard work with an arbritrary thread.
* mini-exceptions.c (mono_install_handler_block_guard):
Use a MonoThreadUnwindState to hold all state needed to
install the guard.
* mini-posix.c (sigusr1_signal_handler): Do wapi interruption
cleanup here.
Rodrigo Kumpera [Wed, 27 Apr 2011 18:11:24 +0000 (15:11 -0300)]
Implement new function to raise an exception using a context.
object.c (mono_raise_exception_with_context): Raise an exception
using a MonoContext as starting point for unwinding.
Zoltan Varga [Wed, 27 Apr 2011 17:50:42 +0000 (19:50 +0200)]
Remove a needless define.
Rodrigo Kumpera [Wed, 27 Apr 2011 15:17:37 +0000 (12:17 -0300)]
x86 pushes vararg arguments unaligned
Dick Porter [Thu, 24 Feb 2011 15:10:39 +0000 (15:10 +0000)]
Make the wake socket non-blocking, so it doesn't deadlock if the wake-receive
socket isn't polled in time. This can easily happen on Solaris if more than
10 wakes are buffered up, while the XEvent loop is busy processing.
Dick Porter [Wed, 27 Apr 2011 13:35:45 +0000 (14:35 +0100)]
Merge branch 'mwf-solaris-no-utf8'
Jeffrey Stedfast [Wed, 27 Apr 2011 13:12:47 +0000 (09:12 -0400)]
Silence gcc warning about vasprintf()'s retval not being used
Jeffrey Stedfast [Wed, 27 Apr 2011 12:45:49 +0000 (08:45 -0400)]
Added config.rpath to eglib
Dick Porter [Thu, 24 Feb 2011 15:12:46 +0000 (15:12 +0000)]
Work around Solaris 10 missing the functions Xutf8LookupString() and
Xutf8ResetIC().
Atsushi Eno [Wed, 27 Apr 2011 11:56:05 +0000 (20:56 +0900)]
Handle fault messages in duplex callback channel.
Marek Safar [Wed, 27 Apr 2011 11:47:38 +0000 (12:47 +0100)]
Fixes a race when disposing iterators
Em. [Wed, 27 Apr 2011 11:46:40 +0000 (04:46 -0700)]
Make RemoveDir task able to recursively delete the content of a directory
According to [MSDN](http://msdn.microsoft.com/en-us/library/xyfz6ddb.aspx), RemoveDir task "Removes the specified directories and all of its files and subdirectories."
Jeffrey Stedfast [Wed, 27 Apr 2011 11:05:21 +0000 (07:05 -0400)]
Don't require autoconf >= 2.62 (breaks the mac build)
Atsushi Eno [Wed, 27 Apr 2011 06:41:34 +0000 (15:41 +0900)]
Use FindCritera/ResolveCriteria Duration properties for DiscoveryEndpoint timeout.
Atsushi Eno [Wed, 27 Apr 2011 06:40:50 +0000 (15:40 +0900)]
Log UDP messages (using System.ServiceModel internals via IVT).
Gonzalo Paniagua Javier [Wed, 27 Apr 2011 03:42:00 +0000 (23:42 -0400)]
If there's a delayed exception, clear 'ares'
Jeffrey Stedfast [Wed, 27 Apr 2011 02:39:06 +0000 (22:39 -0400)]
Require autoconf >= 2.62
Gonzalo Paniagua Javier [Wed, 27 Apr 2011 02:04:49 +0000 (22:04 -0400)]
Worked on linux, failed on OSX
Jeffrey Stedfast [Wed, 27 Apr 2011 00:46:39 +0000 (20:46 -0400)]
Optimize utf8_case_conv()
Seems like g_utf8_strdown/up expect valid utf8, so it
should be safe for us to use g_utf8_to_ucs4_fast().
Jeffrey Stedfast [Wed, 27 Apr 2011 00:36:46 +0000 (20:36 -0400)]
Validate in the decoders so encoders don't have to
Fixed decode_utf32*() to validate their input properly
so that encode_utf16*() and encode_utf8() don't have to.
Was hoping this would improve performance but it doesn't
seem to make much difference. Still, it's worth doing.
Jeffrey Stedfast [Wed, 27 Apr 2011 00:15:06 +0000 (20:15 -0400)]
I'm an idiot. Fixed g_utf8_strlen()
Jeffrey Stedfast [Tue, 26 Apr 2011 23:51:54 +0000 (19:51 -0400)]
Optimized g_utf8_strlen() and redid g_utf8_jump_table[]
Instead of always adding 1 to g_utf8_jump_table[],
simply fix the table to hav the +1 built-in.
Gonzalo Paniagua Javier [Tue, 26 Apr 2011 17:47:15 +0000 (13:47 -0400)]
[Socket] Improved ConnectAsync
ConnectAsync() now uses the improved BeginConnect.
Jeffrey Stedfast [Tue, 26 Apr 2011 22:25:10 +0000 (18:25 -0400)]
Get rid of magic UTF8 subtraction table
Jeffrey Stedfast [Tue, 26 Apr 2011 22:23:02 +0000 (18:23 -0400)]
Implemented g_utf8_get_char_validated() properly
Split out the validation code from g_utf8_validate() so that
g_utf8_get_char_validated() could share that code.
Also rewrote g_utf8_get_char() to not use such a gross hack. New
implementation also happens to be faster.
Mark Probst [Tue, 26 Apr 2011 22:19:31 +0000 (00:19 +0200)]
[utils] Fix a bug in the lock-free hazard table.
Missing write barriers in the delayed free table.
Jeffrey Stedfast [Tue, 26 Apr 2011 21:39:26 +0000 (17:39 -0400)]
Consolidated charset conversion routines
Rewrote/moved all of the charset conversion routines into
giconv.c and moved all of the other g_utf8*() functions out
of gunicode.c into gutf8.c (so that they are easier to find).
Jeffrey Stedfast [Tue, 26 Apr 2011 20:38:19 +0000 (16:38 -0400)]
Fixed g_build_path() (was failing a test)
Jeffrey Stedfast [Tue, 26 Apr 2011 20:34:49 +0000 (16:34 -0400)]
Silence gcc warning and make more robust
Alan McGovern [Tue, 26 Apr 2011 19:37:00 +0000 (20:37 +0100)]
[moonlight] Always use INTERNAL_GMCS as it's always there.
We need to use this as we can't rely on the normal mcs being available
or usable for moonlight.
Alan McGovern [Tue, 26 Apr 2011 17:05:41 +0000 (18:05 +0100)]
[moonlight] Fix up the bootstrap mcs when building
We should use the system mono as the bootstrap MCS and then the
just-built mono for everything else.
Alan McGovern [Tue, 26 Apr 2011 12:38:51 +0000 (13:38 +0100)]
[moonlight] Build mcs.exe as part of the moonlight build
Neither moonlight itself or moonlight applications can be built
with an mcs.exe older than 2.12. As such, to allow users of the moonlight
SDK to build moonlight applications without having a system mono from
git we need to build the compiler ourselves. This will be bundled in the
SDK. We also use it to build all our managed libs as part of the regular
moonlight build.
Gonzalo Paniagua Javier [Tue, 26 Apr 2011 15:01:41 +0000 (11:01 -0400)]
Reset the blocking flag as soon as possible.
Gonzalo Paniagua Javier [Tue, 26 Apr 2011 07:06:30 +0000 (03:06 -0400)]
[socket] Fixed other BeginConnect overloads
The BeginConnect overload taking an IPAddress[] was not really
asynchronous.
Jérémie Laval [Tue, 26 Apr 2011 14:50:37 +0000 (16:50 +0200)]
Fail gracefully when CancellationToken has been created uninitialized by user.
Also add corresponding unit test.
Jérémie Laval [Tue, 26 Apr 2011 14:38:36 +0000 (16:38 +0200)]
Add CancellationToken unit tests
Jérémie Laval [Tue, 26 Apr 2011 13:47:33 +0000 (15:47 +0200)]
Honors correctly canceled ctor parameter of CancellationToken
Jeffrey Stedfast [Tue, 26 Apr 2011 14:24:58 +0000 (10:24 -0400)]
Make sure everything that links with eglib also links with libiconv
Marek Safar [Tue, 26 Apr 2011 11:32:05 +0000 (12:32 +0100)]
Remove using of obsolte __TryReadTypeName
Marek Safar [Tue, 26 Apr 2011 10:48:08 +0000 (11:48 +0100)]
Update to the latest ikvm.reflection
Zoltan Varga [Tue, 26 Apr 2011 11:06:17 +0000 (13:06 +0200)]
Modify fixup_cattrs () to handle a corner case where a cattr is created using a MonoCMethod instead of a ConstructorBuilder. Fixes #689533.
Atsushi Eno [Tue, 26 Apr 2011 10:36:23 +0000 (19:36 +0900)]
Fix monodroid/monotouch build.
Marek Safar [Tue, 26 Apr 2011 09:47:49 +0000 (10:47 +0100)]
[689593] Unwrap array element type when checking return type type-inference
Gonzalo Paniagua Javier [Tue, 26 Apr 2011 04:00:44 +0000 (00:00 -0400)]
[Socket] Fix BeginConnect
Windows/Linux flagged the socket as writable even when connect() has
not been called. On *BSD and OSX, this was not the case and we waited
forever.
Now, for blocking sockets, we make them blocking and call connect()
before adding the socket to the wait pool.
Gonzalo Paniagua Javier [Tue, 26 Apr 2011 03:58:43 +0000 (23:58 -0400)]
Fix compilation in *BSD