mono.git
8 years agoMerge pull request #2154 from BrennanConroy/bug_30018
João Matos [Thu, 22 Oct 2015 11:37:29 +0000 (12:37 +0100)]
Merge pull request #2154 from BrennanConroy/bug_30018

More robust get_address_info

8 years ago[threads] Print more information in case of error in global suspend
Ludovic Henry [Thu, 22 Oct 2015 10:39:31 +0000 (11:39 +0100)]
[threads] Print more information in case of error in global suspend

8 years agoMerge pull request #2149 from directhex/absolute-path-for-xcopy
Jo Shields [Thu, 22 Oct 2015 07:57:39 +0000 (08:57 +0100)]
Merge pull request #2149 from directhex/absolute-path-for-xcopy

[msvc] Use fully qualified path for xcopy

8 years ago[Mono.Security]: Mark 'HttpsClientStream' as obsolete.
Martin Baulig [Wed, 21 Oct 2015 20:15:39 +0000 (16:15 -0400)]
[Mono.Security]: Mark 'HttpsClientStream' as obsolete.

8 years ago[System]: Remove some dead internal code.
Martin Baulig [Wed, 21 Oct 2015 20:12:24 +0000 (16:12 -0400)]
[System]: Remove some dead internal code.

8 years agoMerge pull request #2122 from lambdageek/dev/bug-26384
Rodrigo Kumpera [Wed, 21 Oct 2015 20:09:25 +0000 (16:09 -0400)]
Merge pull request #2122 from lambdageek/dev/bug-26384

In Type.FullName, escape ,+&@*[]\ with blackslash. Closes #26384

8 years agoMerge pull request #2155 from akoeplinger/bug-34334-pr
Marek Safar [Wed, 21 Oct 2015 19:47:38 +0000 (21:47 +0200)]
Merge pull request #2155 from akoeplinger/bug-34334-pr

[interpreter] Relax check for forcing compilation for built-in structs

8 years ago[System]: Use MonoTlsProvider API in WebConnection.
Martin Baulig [Wed, 21 Oct 2015 18:45:26 +0000 (14:45 -0400)]
[System]: Use MonoTlsProvider API in WebConnection.

8 years ago[System]: Use MonoTlsProvider API in FtpWebRequest and SmtpClient.
Martin Baulig [Wed, 21 Oct 2015 18:36:06 +0000 (14:36 -0400)]
[System]: Use MonoTlsProvider API in FtpWebRequest and SmtpClient.

8 years ago[interpreter] Relax check for forcing compilation for built-in structs
Alexander Köplinger [Wed, 21 Oct 2015 15:31:22 +0000 (17:31 +0200)]
[interpreter] Relax check for forcing compilation for built-in structs

Method calls on structs like DateTime wouldn't work before,
even though we know we don't have self mutating structs in mscorlib.

Fixes part 2 of https://bugzilla.xamarin.com/show_bug.cgi?id=34334

8 years ago[reflection] Test for ModuleBuilder.GetType(String) with escaped names
Aleksey Kliger [Wed, 14 Oct 2015 20:54:51 +0000 (16:54 -0400)]
[reflection] Test for ModuleBuilder.GetType(String) with escaped names

8 years ago[reflection] ModuleBuilder, TypeBuilder escaped type identifiers patch
Aleksey Kliger [Mon, 12 Oct 2015 22:30:29 +0000 (18:30 -0400)]
[reflection] ModuleBuilder, TypeBuilder escaped type identifiers patch

1. Use the System.TypeSpec parser to parse components of the type name,
then call out to native code to apply the modifiers, as before.

2. TypeName and TypeIdentifier abstractions to hide display name / internal name strings

Update ModuleBuilder and TypeBuilder to use TypeIdentifier and TypeName
internally in all places that don't need to talk to native code.

3. Change ModuleBuilder.name_cache from Hashtable to Dictionary<TypeName, TypeBuilder>

8 years ago[corlib] Test Type.FullName and Type.GetType() with special characters.
Aleksey Kliger [Fri, 9 Oct 2015 20:41:40 +0000 (16:41 -0400)]
[corlib] Test Type.FullName and Type.GetType() with special characters.

Make sure that type names that include +,&*[]\ are properly escaped and
unescaped when displaying and parsing.

8 years ago[corlib] ves_icall_Type_GetNestedTypes unescape special chars in wanted nested type...
Aleksey Kliger [Fri, 9 Oct 2015 21:51:28 +0000 (17:51 -0400)]
[corlib] ves_icall_Type_GetNestedTypes unescape special chars in wanted nested type name.

8 years ago[corlib] System.TypeSpec.Parse unclosed square brackets wrong exn.
Aleksey Kliger [Tue, 13 Oct 2015 16:19:17 +0000 (12:19 -0400)]
[corlib] System.TypeSpec.Parse unclosed square brackets wrong exn.

Throw ArgumentException on "Foo[," instead of ArrayIndexOutOfBoundsException.

8 years ago[corlib] System.TypeSpec.Parse escaped characters
Aleksey Kliger [Fri, 9 Oct 2015 20:38:48 +0000 (16:38 -0400)]
[corlib] System.TypeSpec.Parse escaped characters

8 years ago[corlib] handle special characters in Type.FullName and Type.GetType(string)
Aleksey Kliger [Fri, 9 Oct 2015 16:15:29 +0000 (12:15 -0400)]
[corlib] handle special characters in Type.FullName and Type.GetType(string)

Type.FullName escapes ,+&*[]\ with a leading backslash.
Type.GetType(typeName) strips escaping backslashes from typeName during parsing.

8 years ago[tuner] Properly preserve AesCryptoServiceProvider.
Jonathan Pryor [Thu, 13 Jun 2013 20:56:18 +0000 (16:56 -0400)]
[tuner] Properly preserve AesCryptoServiceProvider.

[merged by rodo from monodroid - the mentioned test is not included here]

Fixes: https://xamarin.desk.com/agent/case/35534

Commit 5ca3cb4b wasn't propertly tested (doh!).

The problem with Aes and AesCryptoServiceProvider is that there's a
cross-assembly dependency: Aes is in mscorlib, while
AesCryptoServiceProvider is in System.Core. The
PreserveCrypto.ProcessSystemCore() method didn't properly handle this
setup.

Fix the linker, and add a test to Hello.

WARNING: The test sucks. In particular, to "test" this fix you need to
run the app and then grep the `adb logcat` output for:

# DownloadDataTaskAsync complete; status=RanToCompletion; exception=

If the status is anything else, or the exception is non-null, it's
busted.

FURTHERMORE, it's only useful in Release apps, not Debug apps.
(No linker in Debug apps.)

The reason for the need to grep is that there's no sane mechanism to
wait until the Task has completed before checking the status of the
Task, and throwing an exception from within the continuation wouldn't
do anything.

FIXME: The real problem is that Task.Wait() blocks forever and never
returns. This needs further investigation.

https://bugzilla.xamarin.com/show_bug.cgi?id=12681

8 years ago[tuner] handle the case with multiple "preserve" attributes
Radek Doulik [Thu, 15 Jan 2015 15:16:17 +0000 (16:16 +0100)]
[tuner] handle the case with multiple "preserve" attributes

 - when more than one "preserve" attribute is set (see IsPreservedAttribute),
   make sure we handle all of them and not just last one
 - fixes https://bugzilla.xamarin.com/show_bug.cgi?id=19391
 - example code which suffered from this issue:

    [Preserve(AllMembers=true)]
    [DataContract]
    public class TestClass
    {
      ...
    }

  later when a method from this class was queried using the reflection,
  it wasn't available as it was linked out

8 years ago[runtime] Factor out the PE image loading code into a separate MonoImageLoader object.
Zoltan Varga [Tue, 20 Oct 2015 23:19:12 +0000 (19:19 -0400)]
[runtime] Factor out the PE image loading code into a separate MonoImageLoader object.

8 years ago[mcs] Fix inference of dynamic type used as a constructed type. Fixes #34898
Marek Safar [Tue, 20 Oct 2015 22:02:35 +0000 (00:02 +0200)]
[mcs] Fix inference of dynamic type used as a constructed type. Fixes #34898

8 years ago[runtime] Fix a possible buffer overflow in get_process_module ().
Zoltan Varga [Tue, 20 Oct 2015 18:30:43 +0000 (14:30 -0400)]
[runtime] Fix a possible buffer overflow in get_process_module ().

8 years ago[amd64] Remove some dead code.
Zoltan Varga [Tue, 20 Oct 2015 18:25:42 +0000 (14:25 -0400)]
[amd64] Remove some dead code.

8 years agoRevert "[amd64] Allow returning of structs in register pairs."
Zoltan Varga [Tue, 20 Oct 2015 18:12:06 +0000 (14:12 -0400)]
Revert "[amd64] Allow returning of structs in register pairs."

This reverts commit c41b5a47ad24fc359a092fe9023fc82f68cdf198.

Revert this as it breaks IronJS tests:

https://bugzilla.xamarin.com/show_bug.cgi?id=35102

8 years ago[mcs] Add additional doc reset after property initializers. Fixes #35087
Marek Safar [Tue, 20 Oct 2015 16:38:22 +0000 (18:38 +0200)]
[mcs] Add additional doc reset after property initializers. Fixes #35087

8 years ago[acceptance-tests] Fix tarball build and rename "check" target to "check-full"
Alexander Köplinger [Tue, 20 Oct 2015 13:14:34 +0000 (15:14 +0200)]
[acceptance-tests] Fix tarball build and rename "check" target to "check-full"

The acceptance-tests folder wasn't getting included in the tarball, adding the folder
to the SUBDIRS in the top-level Makefile.am fixes this. Additionally, EXTRA_DISTFILES
doesn't work outside of mcs/ so rename it to EXTRA_DIST.

Since we don't want a top-level "make check" to recurse into acceptance-tests just yet,
rename the check target to check-full so nothing gets run by default.

8 years agoFixes mobile build
Marek Safar [Tue, 20 Oct 2015 12:53:44 +0000 (14:53 +0200)]
Fixes mobile build

8 years ago[mdoc] Update expected test results after private members change in mscorlib
Marek Safar [Tue, 20 Oct 2015 10:01:25 +0000 (12:01 +0200)]
[mdoc] Update expected test results after private members change in mscorlib

8 years ago[System.Runtime.Caching] Update test due to .net fixes
Marek Safar [Tue, 20 Oct 2015 09:47:06 +0000 (11:47 +0200)]
[System.Runtime.Caching] Update test due to .net fixes

8 years ago[system.componentmodel.dataannotations] Fix incorrect IsValid_Object_ValidationContex...
Marek Safar [Tue, 20 Oct 2015 09:36:52 +0000 (11:36 +0200)]
[system.componentmodel.dataannotations] Fix incorrect IsValid_Object_ValidationContext_CrossCallsWithNIEX test

8 years ago[msvc] Use fully qualified path for xcopy
Jo Shields [Tue, 20 Oct 2015 08:56:15 +0000 (09:56 +0100)]
[msvc] Use fully qualified path for xcopy

There are still nasty issues with $PATH vs %PATH% for builds spawned by a system service, this should hopefully fix the last one

8 years ago[system.data] Remove empty ending character from resource constants
Marek Safar [Tue, 20 Oct 2015 08:02:32 +0000 (10:02 +0200)]
[system.data] Remove empty ending character from resource constants

8 years ago[gsharedvt] Inflate methods properly in one case. Fixes #34926.
Zoltan Varga [Tue, 20 Oct 2015 02:52:41 +0000 (22:52 -0400)]
[gsharedvt] Inflate methods properly in one case. Fixes #34926.

8 years agoMerge pull request #2148 from akoeplinger/remove-old-runtime-versions
Alexander Köplinger [Mon, 19 Oct 2015 20:26:18 +0000 (22:26 +0200)]
Merge pull request #2148 from akoeplinger/remove-old-runtime-versions

[runtime] Remove explicit support for v4.0.30128 and v4.0.20506

8 years ago[runtime] Remove explicit support for v4.0.30128 and v4.0.20506
Alexander Köplinger [Mon, 19 Oct 2015 19:51:41 +0000 (21:51 +0200)]
[runtime] Remove explicit support for v4.0.30128 and v4.0.20506

These versions were still binding to the 4.0 mscorlib, which is a reference-only assembly now
and isn't intended for being used at runtime.

This issue manifested itself when someone used e.g. <supportedRuntime version="v4.0.20506"/> in
the app.config, causing the runtime to try loading that version and then bailing out with
"Corlib not in sync with this runtime: expected corlib version 117, found 111." (with 111 being
the corlib version at the time the reference assemblies were generated).

The fix is to remove the specific versions from the supported_runtimes array, causing programs
to automatically use the newest version instead.

Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=34675

Other reports:

https://youtrack.jetbrains.com/issue/TW-42700
https://youtrack.jetbrains.com/issue/TW-41337
http://stackoverflow.com/questions/29988698/teamcity-nunitlauncher-running-on-linux-mono-gives-corlib-not-in-sync-with-th

8 years ago[llvm] Fix the handling of r4 arguments during calls. Fixes #35044.
Zoltan Varga [Mon, 19 Oct 2015 19:47:17 +0000 (15:47 -0400)]
[llvm] Fix the handling of r4 arguments during calls. Fixes #35044.

8 years agoBump reference source.
Martin Baulig [Mon, 19 Oct 2015 17:58:45 +0000 (13:58 -0400)]
Bump reference source.

8 years ago[runtime] Remove unused MONO_IS_CROSS_COMPILE define.
João Matos [Mon, 19 Oct 2015 16:44:29 +0000 (17:44 +0100)]
[runtime] Remove unused MONO_IS_CROSS_COMPILE define.

8 years ago[acceptance-tests] Convert Ruby script to Python
Alexander Köplinger [Mon, 19 Oct 2015 14:02:46 +0000 (16:02 +0200)]
[acceptance-tests] Convert Ruby script to Python

Most of the other scripts in the repo use Python and we decided to converge on that one.

8 years ago[acceptance-tests] Integrate Roslyn, CoreCLR and ms-test-suite into acceptance-tests
Alexander Köplinger [Mon, 19 Oct 2015 15:06:46 +0000 (17:06 +0200)]
[acceptance-tests] Integrate Roslyn, CoreCLR and ms-test-suite into acceptance-tests

This commit integrates the CoreCLR, Roslyn and ms-test-suite (which is Xamarin-internal, but should just print a warning for someone without access).
Running the tests suites can be done with 'make check-coreclr', 'make check-roslyn' and 'make check-ms-test-suite', or all of them with make check in the acceptance-tests folder.
They won't run on a top-level make check though, which is intended until every test suite is fixed.

This uses a custom submodule system that doesn't rely on git submodules (which are annoying when the repo is large and we only need them for tests). Instead we can fetch repositories on demand.

History (before squashing into smaller chunks):

- Rename check-{testsuite} make target to validate-{testsuite}. The former can be easily confused with the "check" target that runs the tests.
- Move acceptance-tests Makefile to automake, so we can avoid hardcoding paths
- Copy System.Console facade to CoreCLR IL test directories. Otherwise most of the IL tests fail as they rely on the System.Console assembly reference.
- Update README.md to mention the tests
- Use $(MAKE) instead of plain make and pass -C instead of cd'ing to directory
- Exit when the repository can't be cloned and print a note about the ms-test-suite repo. The ms-test-suite repo is Xamarin-internal so it'll error out in public.
- Integrate MS CoreCLR runtime tests into Mono's test infrastructure
- Get rid of intermediate msg file and pipe straight to git
- Rename README to CONFIG since we don't store metadata in readme.md anymore
- Fix comparison in versions.mk to be sh compliant. It relied on bashism before.

8 years ago[acceptance-tests] Add code from xamarin/mono extensions branch
Zoltan Varga [Wed, 7 Oct 2015 14:32:13 +0000 (16:32 +0200)]
[acceptance-tests] Add code from xamarin/mono extensions branch

This provides a "git submodule"-like tool which can be used to
checkout optional repositories.

8 years ago[tests] Add a new --testsuite-name parameter to managed test runner
Alexander Köplinger [Mon, 19 Oct 2015 14:36:58 +0000 (16:36 +0200)]
[tests] Add a new --testsuite-name parameter to managed test runner

Use it for the gshared tests, they were all (over-)writing the same TestResults_runtime.xml before.

8 years ago[tests] Add a new --expected-exit-code option to the managed test-runner
Alexander Köplinger [Mon, 19 Oct 2015 14:33:54 +0000 (16:33 +0200)]
[tests] Add a new --expected-exit-code option to the managed test-runner

8 years agoMerge pull request #2136 from esdrubal/uridotsegment
Marcos Henrich [Mon, 19 Oct 2015 13:01:30 +0000 (14:01 +0100)]
Merge pull request #2136 from esdrubal/uridotsegment

[System] Fixed dots trimmed from segments.

8 years agojit] Replace a few more #ifdefs with flags.
Zoltan Varga [Mon, 19 Oct 2015 03:48:45 +0000 (23:48 -0400)]
jit] Replace a few more #ifdefs with flags.

8 years agoFix the build.
Zoltan Varga [Sun, 18 Oct 2015 23:59:19 +0000 (19:59 -0400)]
Fix the build.

8 years ago[jit] Add a new MonoBackend structure which will contain backend constants/functions...
Zoltan Varga [Sun, 18 Oct 2015 23:03:07 +0000 (19:03 -0400)]
[jit] Add a new MonoBackend structure which will contain backend constants/functions. Move the arch specific flags from MonoCompile to this structure.

8 years agojit] Replace a few more #ifdefs with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 03:24:07 +0000 (23:24 -0400)]
jit] Replace a few more #ifdefs with MonoCompile flags.

8 years ago[jit] Replace a few more #ifdefs with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 01:13:03 +0000 (21:13 -0400)]
[jit] Replace a few more #ifdefs with MonoCompile flags.

8 years ago[jit] Replace a few arch-specific #ifdef blocks with MonoCompile flags.
Zoltan Varga [Sun, 18 Oct 2015 00:55:24 +0000 (20:55 -0400)]
[jit] Replace a few arch-specific #ifdef blocks with MonoCompile flags.

8 years ago[jit] Add flags to MonoCompile to allow the removal of arch-specific ifdefs from...
Zoltan Varga [Sun, 18 Oct 2015 00:45:54 +0000 (20:45 -0400)]
[jit] Add flags to MonoCompile to allow the removal of arch-specific ifdefs from the jit code. Add a mini_init_cfg () function to initialize them using the arch defines.

8 years ago[threads] Fix another sleep compilation error on win32
Alexander Köplinger [Sat, 17 Oct 2015 19:42:44 +0000 (12:42 -0700)]
[threads] Fix another sleep compilation error on win32

One case was missed in 2ad1993b516244d0ae242a2eaa795d561f8ac02a

8 years agoMake the thread dump code safe by doing only async safe operations when a thread...
Zoltan Varga [Sat, 17 Oct 2015 05:37:47 +0000 (01:37 -0400)]
Make the thread dump code safe by doing only async safe operations when a thread is suspended.

8 years ago[threads] Fix sleep compilation error on win32
Ludovic Henry [Sat, 17 Oct 2015 17:54:57 +0000 (18:54 +0100)]
[threads] Fix sleep compilation error on win32

8 years agoMerge pull request #2139 from akoeplinger/symbolicate-test-fix
Marcos Henrich [Sat, 17 Oct 2015 15:57:10 +0000 (16:57 +0100)]
Merge pull request #2139 from akoeplinger/symbolicate-test-fix

[mono-symbolicate] Skip tests if AOT isn't supported by the current arch

8 years agoFixes build
Marek Safar [Sat, 17 Oct 2015 07:16:24 +0000 (09:16 +0200)]
Fixes build

8 years agoMerge pull request #2144 from dlech/patch-1
Zoltan Varga [Sat, 17 Oct 2015 04:29:03 +0000 (00:29 -0400)]
Merge pull request #2144 from dlech/patch-1

Fix filename in header

8 years agoFix filename in header
David Lechner [Sat, 17 Oct 2015 02:09:36 +0000 (21:09 -0500)]
Fix filename in header

8 years ago[amd64] Allow returning of structs in register pairs.
Zoltan Varga [Sat, 17 Oct 2015 00:05:05 +0000 (20:05 -0400)]
[amd64] Allow returning of structs in register pairs.

8 years ago[llvm] Fix returning of values in a register pair.
Zoltan Varga [Sat, 17 Oct 2015 00:04:21 +0000 (20:04 -0400)]
[llvm] Fix returning of values in a register pair.

8 years ago[llvm] Fix JIT support.
Zoltan Varga [Fri, 16 Oct 2015 19:47:54 +0000 (15:47 -0400)]
[llvm] Fix JIT support.

8 years ago[runtime] Disable the emission of stubs debug info on apple, its no longer supported...
Zoltan Varga [Fri, 16 Oct 2015 19:47:38 +0000 (15:47 -0400)]
[runtime] Disable the emission of stubs debug info on apple, its no longer supported by clang.

8 years agoMerge pull request #2143 from akoeplinger/refactor-mono-security-providers
Alexander Köplinger [Fri, 16 Oct 2015 22:14:47 +0000 (00:14 +0200)]
Merge pull request #2143 from akoeplinger/refactor-mono-security-providers

[Mono.Security.Providers] Refactor providers into distinct folders

8 years agoBump reference source
Marek Safar [Fri, 16 Oct 2015 22:10:23 +0000 (00:10 +0200)]
Bump reference source

8 years ago[corlib] Implement UnsafeEnumCastLong
Marek Safar [Fri, 16 Oct 2015 22:08:30 +0000 (00:08 +0200)]
[corlib] Implement UnsafeEnumCastLong

8 years ago[bcl] Update to 4.6 referencesource
Marek Safar [Fri, 16 Oct 2015 21:32:35 +0000 (23:32 +0200)]
[bcl] Update to 4.6 referencesource

8 years ago[Mono.Security.Providers] Refactor providers into distinct folders
Alexander Köplinger [Fri, 16 Oct 2015 20:11:33 +0000 (22:11 +0200)]
[Mono.Security.Providers] Refactor providers into distinct folders

Build the two libraries Mono.Security.Providers.DotNet and Mono.Security.Providers.NewSystemSource just like
every other class library instead of duplicating the logic into the subfolders.

This also fixes "make dist".

8 years ago[WinForms] ComboBox, ListBox and TextBox should use Control Foreground+Background
Marek Habersack [Fri, 16 Oct 2015 19:39:29 +0000 (21:39 +0200)]
[WinForms] ComboBox, ListBox and TextBox should use Control Foreground+Background

They have been using Window Foreground+Background so far which make them unreadable
on systms with dark themes. This change makes them behave.

8 years ago[TLS]: Make ValidationResult.MonoSslPolicyErrors nullable.
Martin Baulig [Tue, 13 Oct 2015 21:56:35 +0000 (17:56 -0400)]
[TLS]: Make ValidationResult.MonoSslPolicyErrors nullable.

(cherry picked from commit abfac54c47312c00f22fffef821f8889cbc67098)
(cherry picked from commit ccb7bfc930f4265b685eada8e73ee81acaae5963)

8 years ago[System]: Remove the TrustEvaluateSsl(MX.X509CertificateCollection...) overloads.
Martin Baulig [Fri, 16 Oct 2015 16:36:29 +0000 (12:36 -0400)]
[System]: Remove the TrustEvaluateSsl(MX.X509CertificateCollection...) overloads.

We now use SSCX.X509Certificate2Collection in ChainValidationHelper.

8 years agoMerge pull request #2141 from akoeplinger/fix-wrong-disableaot-define
João Matos [Fri, 16 Oct 2015 18:25:57 +0000 (19:25 +0100)]
Merge pull request #2141 from akoeplinger/fix-wrong-disableaot-define

[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT

8 years ago[Process] Do not use Exited as it's racy with Start and BeginOutputReadLine/BeginErro...
Ludovic Henry [Fri, 16 Oct 2015 17:31:19 +0000 (18:31 +0100)]
[Process] Do not use Exited as it's racy with Start and BeginOutputReadLine/BeginErrorReadLine

The issue can arise if the Process is going to run faster than the call
between Start and BeginOutputReadLine/BeginErrorReadLine. To increase
the chance of the race happening, insert a Thread.Sleep (1000) between
Start and BeginOutputReadLine/BeginErrorReadLine.

This race exists because the WaitForExit in the background thread in the
Process, will first wait the process to finish, then try to wait for the
output to finish, but it will be null as BeginOutputReadLine has not been
called yet, then try to wait on error (same issue as output), and finally
call the Exited event, which will close the stdout and stderr TextWriter.
The call to BeginOutputReadLine and BeginErrorReadLine will finally happen
(which is still correct as the output and error of the Process has not
been closed yet), then calling the OutputDataReceived and ErrorDataReceived
callbacks which will try to write to the closed stdout and stderr
TextWriter.

Simply enqueuing a ThreadPool work item, which will wait for the process
to exit manually, simply resolve this issue, as we guarantee that the
call to WaitForExit happens after BeginOutputReadLine/BeginErrorReadLine,
and is not racing with it.

8 years ago[corlib] Add few reference source dependencies
Marek Safar [Fri, 16 Oct 2015 16:42:10 +0000 (18:42 +0200)]
[corlib] Add few reference source dependencies

8 years agoAll MARTIN_FIXME's have been taken care of.
Martin Baulig [Fri, 16 Oct 2015 16:33:02 +0000 (12:33 -0400)]
All MARTIN_FIXME's have been taken care of.

8 years ago[Mono.Security]: Check 'CertificateValidationHelper.SupportsX509Chain' before attempt...
Martin Baulig [Tue, 8 Sep 2015 13:46:54 +0000 (15:46 +0200)]
[Mono.Security]: Check 'CertificateValidationHelper.SupportsX509Chain' before attempting to compute the chain.

Computing the X509Chain is not supported on OS X and iOS because the OS does
not give us access to the root certificates - this would throw an Exception
at runtime.

(cherry picked from commit 44d34a17c1bf305e39bcfc277cc7add48560d899)
(cherry picked from commit 504328ec43d9d917c1f140ecf89f253ab2be39ec)

8 years agoForgot to remove one MARTIN_FIXME.
Martin Baulig [Fri, 16 Oct 2015 16:12:19 +0000 (12:12 -0400)]
Forgot to remove one MARTIN_FIXME.

8 years ago[msvc] Remove left over project guid from mono.sln
Alexander Köplinger [Fri, 16 Oct 2015 14:14:14 +0000 (16:14 +0200)]
[msvc] Remove left over project guid from mono.sln

The project was removed from the solution in 735fc51cc092ef89ca08b8304c582af0bf60b8e4, but one instance was missed.
This should fix the Windows build on Jenkins.

8 years ago[mono-symbolicate] Skip AOT tests if AOT isn't supported by the current arch
Alexander Köplinger [Fri, 16 Oct 2015 11:48:57 +0000 (13:48 +0200)]
[mono-symbolicate] Skip AOT tests if AOT isn't supported by the current arch

This fixes Jenkins errors on architectures like s390x which don't support AOT.

8 years ago[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT
Alexander Köplinger [Fri, 16 Oct 2015 13:35:33 +0000 (15:35 +0200)]
[runtime] Rename DISABLE_AOT_COMPILER back to DISABLE_AOT

The original rename in c4aa103e486ac7116d78be3f3efecf49bfd29335 was done by accident,
the rest of the codebase still used the old name so disabling AOT didn't actually work.

Renaming this back to the original name and fix a few instances where methods weren't added
in the DISABLE_AOT case.

This allows a `--enable-minmal=aot` build to succeed and actually work.

8 years agoRevert "[process] Use same behavior as .NET"
Ludovic Henry [Fri, 16 Oct 2015 10:00:58 +0000 (11:00 +0100)]
Revert "[process] Use same behavior as .NET"

It broke the android build

This reverts commit c688b8c84ca3b26a1025a2194314183d2a880086.

8 years ago[runtime] Simplify the caching of gshared generic params now that they point to their...
Zoltan Varga [Fri, 16 Oct 2015 08:07:01 +0000 (04:07 -0400)]
[runtime] Simplify the caching of gshared generic params now that they point to their parent gparam.

8 years ago[runtime] Add a new MonoGSharedGenericParam structure as an extension of the MonoGene...
Zoltan Varga [Fri, 16 Oct 2015 07:58:31 +0000 (03:58 -0400)]
[runtime] Add a new MonoGSharedGenericParam structure as an extension of the MonoGenericParamFull structure, put the 'parent' field there.

8 years ago[amd64] Split the valuetype argument passing code into win64 and non-win64 versions...
Zoltan Varga [Fri, 16 Oct 2015 03:11:20 +0000 (23:11 -0400)]
[amd64] Split the valuetype argument passing code into win64 and non-win64 versions to simplify both.

8 years ago[aot] Create constrained gparams using the same mini_get_shared_gparam () function...
Zoltan Varga [Fri, 16 Oct 2015 00:13:59 +0000 (20:13 -0400)]
[aot] Create constrained gparams using the same mini_get_shared_gparam () function used by the rest of the code, so its properly unique-ed.

8 years ago[io-layer] Remove Sleep and SleepEx
Ludovic Henry [Thu, 9 Jul 2015 20:20:26 +0000 (17:20 -0300)]
[io-layer] Remove Sleep and SleepEx

8 years ago[io-layer] Remove GetCurrentThreadId
Ludovic Henry [Thu, 9 Jul 2015 19:18:07 +0000 (16:18 -0300)]
[io-layer] Remove GetCurrentThreadId

8 years ago[runtime] Remove dead code
Ludovic Henry [Fri, 10 Jul 2015 00:42:10 +0000 (21:42 -0300)]
[runtime] Remove dead code

8 years ago[sdb] Fix state initialization of suspended threads to work when the debugger thread...
Rodrigo Kumpera [Tue, 13 Oct 2015 22:33:00 +0000 (18:33 -0400)]
[sdb] Fix state initialization of suspended threads to work when the debugger thread is not attached. Fixes #34750

The problem happens because thread_interrupt runs in the debugger thread (suspend initiator).

thread_interrupt then calls mono_thread_state_init_from_monoctx which collects the state of the current thread
which is definitely not what we wanted.

There used to be some compensation code after calling mono_thread_state_init_from_monoctx to actually init the state properly.
This is why it worked, at all.

Thew problem is that the debugger thread now might not attach at all under some circumstances, which would trigger
mono_thread_state_init_from_monoctx to return FALSE and trip into the assert.

The fix is to simply not use mono_thread_state_init_from_monoctx at all, just copy the state from data. This fix has the
bonus of getting the domain correctly.

8 years agoMerge pull request #2113 from ludovic-henry/coop-socket-abort
Rodrigo Kumpera [Thu, 15 Oct 2015 18:56:40 +0000 (14:56 -0400)]
Merge pull request #2113 from ludovic-henry/coop-socket-abort

[socket] Make blocking syscall abortable on signal-less platforms

8 years agoMerge pull request #2123 from kumpera/verifier-fix
Rodrigo Kumpera [Thu, 15 Oct 2015 18:53:28 +0000 (14:53 -0400)]
Merge pull request #2123 from kumpera/verifier-fix

[verifier] Fix the verifiers to handle Roslyn style fixed blocks.

8 years agoFix MSVC build after 16570265149730ec6a4760cc0fa34decc1a9d981
Alexis Christoforides [Thu, 15 Oct 2015 18:27:49 +0000 (14:27 -0400)]
Fix MSVC build after 16570265149730ec6a4760cc0fa34decc1a9d981

8 years agoMerge pull request #2127 from joelmartinez/mdoc-multiassembly-squashed
Miguel de Icaza [Thu, 15 Oct 2015 18:00:16 +0000 (14:00 -0400)]
Merge pull request #2127 from joelmartinez/mdoc-multiassembly-squashed

[mdoc] `multiassembly` option for duplicated types

8 years ago[process] Use same behavior as .NET
Ludovic Henry [Thu, 15 Oct 2015 16:49:06 +0000 (17:49 +0100)]
[process] Use same behavior as .NET

8 years agoMerge pull request #2137 from fplucas/patch-1
João Matos [Thu, 15 Oct 2015 14:36:00 +0000 (15:36 +0100)]
Merge pull request #2137 from fplucas/patch-1

Fixing the broken icon of centos-s390x

8 years agoFixing the broken icon of centos-s390x
Lucas [Thu, 15 Oct 2015 14:32:17 +0000 (11:32 -0300)]
Fixing the broken icon of centos-s390x

8 years ago[System] Fixed dots trimmed from segments.
Marcos Henrich [Thu, 15 Oct 2015 14:01:27 +0000 (15:01 +0100)]
[System] Fixed dots trimmed from segments.

Before .NET 4.5 dots were trimmed from the end of uri path segments.

In .NET 4.5 IRI parsing is enabled by default and dot are no longer
trimmed from the end of path segments.

This commit disables dot trimming when Uri.IriParsing is true.

Fixes #29864.

8 years agoMerge pull request #2134 from akoeplinger/bug-34334
Alexander Köplinger [Thu, 15 Oct 2015 13:44:04 +0000 (15:44 +0200)]
Merge pull request #2134 from akoeplinger/bug-34334

[interpreter] Implement comparing string values in (Not)EqualInstruction

8 years ago[runtime] Switch ARM backend use to use g_print instead of printf.
João Matos [Thu, 15 Oct 2015 13:34:53 +0000 (14:34 +0100)]
[runtime] Switch ARM backend use to use g_print instead of printf.

Sorry about the churn, the previous commit contained an unintended chunk.

8 years agoRevert "[runtime] Switch ARM backend use to use g_print instead of printf."
João Matos [Thu, 15 Oct 2015 13:26:19 +0000 (14:26 +0100)]
Revert "[runtime] Switch ARM backend use to use g_print instead of printf."

This reverts commit 8e9f93be24f2b8b744f9ad31292f3f74a5caf411.

8 years ago[runtime] Switch ARM backend use to use g_print instead of printf.
João Matos [Thu, 15 Oct 2015 13:24:10 +0000 (14:24 +0100)]
[runtime] Switch ARM backend use to use g_print instead of printf.