Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

We’re showing branches in this repository, but you can also compare across forks.

base fork: mono/mono
base: master
head fork: mono/mono
compare: mono-2-6
This comparison is big! We're only showing the most recent 250 commits
Commits on Sep 14, 2010
Ankit Jain radical [xbuild] Fix ConsoleLogger's output, extra blank lines etc. 2c667e8
Ankit Jain radical [xbuild] Fix handling of tool output.
The *StreamChanged event for ProcessWrapper may get parts of
long lines, so process the complete ones that we have (for matching
error/warning), and save rest for processing when the rest of it
is received.

Also, don't ignore empty lines.

* class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/ToolTask.cs
Commits on Sep 21, 2010
Carsten Schlote cschlote [System.Configuration] Fixed GetEvidenceHash() function to produce va…
…lid filenames

The previous implementation creates eventually invalid filenames in a
random fashion on linux, mac, windows by having '/' or '\' chars
in the base64 output. As a result you can't save or retrieve your settings
due to filesystem errors.

This patch changes the output to plain hex values. This is a bit longer
then a base64 string, but also 100% filesystem safe.


Signed-off-by: Carsten Schlote <>
Carsten Schlote cschlote [System.Configuration] Fixed GetProductName() function
Added missing check for empty strongname. This case is now handled the
same way as a missing strongname.

GetProductName() now correctly uses _Url_ and assembly.EscapedCodeBase
for its output.

Signed-off-by: Carsten Schlote <>
Carsten Schlote cschlote [System.Configuration] Added check for SettingProviderAttribute on se…
…ttings class

There is no checkfor the SettingProviderAttribute attached to a Settings class.
.NET uses this to replace the default LocalSettingsProvider with your
own SettingsProvider.

The patch adds this feature.

Signed-off-by: Carsten Schlote <>
Commits on Sep 22, 2010
Rolf Bjarne Kvinge rolfbjarne 2010-03-03 Rolf Bjarne Kvinge <>
	* trace.c: We need to parse exclude tokens ('-') before string tokens,
	since the exclude token is a valid string character.

svn path=/trunk/mono/; revision=152906
Rolf Bjarne Kvinge rolfbjarne In man:
2010-03-03  Rolf Bjarne Kvinge  <>

	* mono.1: Document exception tracing.

In mono/mini:
2010-03-03  Rolf Bjarne Kvinge  <>

	* trace.c|h:
	* mini-exceptions.c: Add support for printing stack traces when handling
	exceptions, and when printing exceptions thrown while tracing also print
	the exception message.

svn path=/trunk/mono/; revision=152907
Commits on Sep 23, 2010
Rodrigo Kumpera kumpera Handle verification of types in non canonical forms.
	* verify.c (mono_type_is_valid_type_in_context): Handle
	types such as VAR and MVAR encoded as CLASS or VALUETYPE.
	This encoding is not the canonical one, but works and
	must be properly verified.

	Fixes #601970
Commits on Oct 01, 2010
Zoltan Varga vargaz Fix code buffer reallocation check for OP_SWITCH on arm. bdc2e25
Zoltan Varga vargaz Check the debugger_thread_exited condition in a loop to guard against…
… spurious wakeups. Fixes #642780.
Commits on Oct 04, 2010
Gonzalo Paniagua Javier gonzalop Set have_response
        Set have_response to true when there's a protocol error or a previous
        exception for POST/PUT.
        Patch by Bassam Tabbara.
Marek Habersack grendello [configuration] Part of fix for bug #579837. CommaDelimitedStringColl…
…ection must properly note that it was modified.

When one manipulates the collection as an instance of StringCollection, the 'modified' field will not
be set (Add, Remove etc. from the underlying StringCollection type will be used). To work around it
a check has to be performed in IsModified whether the contents of the collection changed. It is done
by comparing string hash codes of the original vs current string.
CommaDelimitedStringCollectionConverter forces string hash code update on the new collection, so that IsModified
works correctly on collections converted from comma-delimited strings.
Marek Habersack grendello [] Part of fix for bug #579837. AuthorizationRule.SerializeEle…
…ment will not process unmodified elements.

* AuthorizationRule.cs: if the configuration save is not Full, SerializeElement checks whether the rule being
  serialized is modified. If it isn't, validation and serialization are not performed.
* AuthorizationRuleCollection.cs: there is no element name for the collection.
Commits on Oct 06, 2010
Gonzalo Paniagua Javier gonzalop X509Chain always uses the LM store
	X509Chain will now add the LM store certificates always, even when the
	CU store is selected.
Commits on Oct 07, 2010
Gonzalo Paniagua Javier gonzalop Fix CryptoStream.Dispose
	-Dispose will call TransformFinalBlock() for Read streams. Fixes bug #644648.
	-Dispose () will call Dispose (bool). Fixes bug #644654.
	-Stream.Close calls GC.SuppressFinalize(). Fixes bug #644660.
Gonzalo Paniagua Javier gonzalop Fix the 1.1 profile
	The 1.1 profile Stream.Close () does not call Dispose (true), which
	breaks with my previous patch to CryptoStream.
Commits on Oct 14, 2010
Zoltan Varga vargaz Avoid a crash in g_convert () if iconv_open () fails. 55bbdf3
Zoltan Varga vargaz Update the IMT thunk creation code on sparc to support net 4.0. 636e3f9
Gonzalo Paniagua Javier gonzalop [ThreadPool] Clear the thread state
	Clear the thread state after finishing a work item. We were only
	resetting the background state.
Commits on Oct 17, 2010
Zoltan Varga vargaz Avoid calling sem_post on a uninitialized semaphore during thread att…
…ach, it works under linux, but fails under *bsd. Fixes #647248.
Commits on Oct 19, 2010
Levi Bard Tak [Fix] Ensure that exceptions are propagated when embedding
* metadata/object.c:
* mini/mini.c:
Ensure that exceptions get propagated back to the caller
when mono is being embedded.
License: MIT/X11
Zoltan Varga vargaz Define HOST_WIN32 in on 2.6 too to make it easier the ba…
…ckporting of patches.
Levi Bard Tak [Fix] Turn off exception callback filtering on WoW64.
* mini/exceptions-x86.c: Turn off exception callback filtering on WoW64. This allows managed exceptions to actually work when using 32bit mono on 64bit Windows.

License: MIT/X11
Levi Bard Tak Don't disconnect an unconnected socket. Fixes #606809.
* Mono.Debugger.Soft/VirtualMachineManager.cs: Don't disconnect an unconnected socket. Fixes #606809.

This patch is licensed MIT/X11.
Commits on Oct 20, 2010
Levi Bard Tak [Fix] Ensure correct stack pointer initialization on !POSIX
* metadata/threads.c: Ensure correct stack pointer initialization on !POSIX.
This fixes some random crashes with embedded, release-optimized binaries on windows.

License: MIT/X11
Commits on Oct 21, 2010
Zoltan Varga vargaz Avoid caching stuff in socket-io.c in static variables, since the soc…
…ket assembly can be unloaded, cache them in MonoDomain instead.
Gonzalo Paniagua Javier gonzalop Replace EnumProcesses with OpenProcess
	namedmutex_prewait was (partially) listing the running processes and
	then searching through them. Now we use OpenProcess to verify the owner
	of the mutex is still alive.

	Fixes bug #648133
Gonzalo Paniagua Javier gonzalop Fix the collision handling code
	After the fix for bug #605092, inserting timers with an equal due time
	was failing because searching in the list was also using a reference
	comparison. Now, when adding a new timer, we search using just the due
	Fixes bug #648130.
Gonzalo Paniagua Javier gonzalop FromBinary does not need ToLocalTime
	When converting to DateTime from a long, we don't need ToLocalTime().
	Setting the kind to Local is enough.
	Patch from Mig.

	Fixes bug #648252.
Commits on Oct 22, 2010
Zoltan Varga vargaz Emit GenericEqualityComparer<T> instances for each EqualityComparer<T…
…> instance in AOT, the former is created dynamically by the latter.
Commits on Oct 23, 2010
Zoltan Varga vargaz Implement memory barriers for amd64/x86. Fixes #648831. 774b128
Commits on Oct 25, 2010
Zoltan Varga vargaz Disable catchpoints when the DISABLE_BREAKPOINTS flag is used during …
…an invoke. Fixes #632224.
Commits on Oct 31, 2010
Zoltan Varga vargaz Disable inlining if the assembly has a DebuggableAttribute with the I…
…sJITOptimizerDisabled flag set. Fixes #604486.
Commits on Nov 01, 2010
Gonzalo Paniagua Javier gonzalop Avoid killing the thread if socket already null
	In some weird cases socket is null when we try to close it.
Commits on Nov 02, 2010
Gonzalo Paniagua Javier gonzalop Renaming a dangling symlink works now

	Fixes bug #650779.
Gonzalo Paniagua Javier gonzalop Revert wrong fix for #648252 339b3f3
Commits on Nov 03, 2010
Zoltan Varga vargaz Fix encoding of large strings in the soft debugger api. Fixes #648832. bc7c3c0
Commits on Nov 05, 2010
Zoltan Varga vargaz Fix gshared support in the soft debugger. Fixes #651251. 458f250
Zoltan Varga vargaz Fix more gshared problems in the soft debugger. 6b0c63c
Zoltan Varga vargaz Fix crashes in the debugger stack walk code if a gshared method calls…
… another using a managed-to-native translation.
Zoltan Varga vargaz Fix a bug introduced by the previous change to mono_jit_walk_stack_fr…
…om_ctx_in_thread ().
Commits on Nov 10, 2010
Marek Habersack grendello [, routing] Fix for bug #651593, backport of 6946116 a00fd0b
Marek Habersack grendello [] HttpRuntime.AppDomainAppPath may be null during tests, chec…
…k it before using.
Commits on Nov 11, 2010
Andrew Jorgensen Fix "make dist" for the .po files
* mcs lives under mono now, so the ../ gets dropped
Andrew Jorgensen Add system.web.mvc2.pc 4b3d212
Commits on Nov 16, 2010
Zoltan Varga vargaz Bump the max size of the arm prolog to prevent overflows. e360c12
Commits on Nov 24, 2010
Gonzalo Paniagua Javier gonzalop [Sockets] Support Remote/LocalEndPoint for AF_UNIX
	We were not handling correctly the AF_UNIX family when getting the
	socket name or the peer name.

	Fixes bug #655637.
Commits on Nov 25, 2010
Rodrigo Kumpera kumpera Check generic instantions for constraint violations.
	* class.c (mono_class_init): Check instantiations of generic

	* icall.c (ves_icall_Type_MakeGenericType): Ditto.

	* verify.c: Add mono_verifier_class_is_valid_generic_instantiation
	to the internal API so generic instances can be checked.

	Fixes #654136
Rodrigo Kumpera kumpera Fix corlib testsuite crash.
	* icall.c (ves_icall_Type_MakeGenericType): We can inflate
	into the gtd and the verifier function is not able to handle
Rodrigo Kumpera kumpera Handle invalid instantiation of generic methods.
	* verify.c: Add new function to internal verifier API to check
	method instantiations.

	* reflection.c (mono_reflection_bind_generic_method_parameters):
	Check the instantiation before returning it.

	Fixes #655847
Zoltan Varga vargaz Fix stack alignment when resuming from a signal handler in the soft d…
…ebugger. Fixes #647464.
Commits on Nov 26, 2010
Zoltan Varga vargaz Fix crashes inside find_method_in_metadata (). Fixes #561728. 45bf3e9
Commits on Nov 29, 2010
Rodrigo Kumpera kumpera Disable generic instance verification is security is off.
	* verify.c: If security is not enabled don't perform
	instance verification as 2.6 SRE/mcs can't couple with it.

	Fix System.dll build regression.
Robert Nagy Add support for the internal boehm-gc on OpenBSD 091ccd5
Zoltan Varga vargaz Add support for the internal boehm-gc on OpenBSD 506b992
djsell djsell Fix Expression.MakeBinary so it can return ArrayIndex nodes 5e5514d
Commits on Dec 01, 2010
Zoltan Varga vargaz Export mono_xdebug_flush (). 2afbe1e
Commits on Dec 02, 2010
Zoltan Varga vargaz Fix a backport problem. 126c4e6
Commits on Dec 10, 2010
Zoltan Varga vargaz Fix handling of gshared methods declared in generic superclasses of n…
…ongeneric classes in stack traces. Fixes #658645.
Commits on Dec 13, 2010
Veerapuram Varadhan vvaradhan ** Fixes #582732
       * DataColumn.cs (Clone): Deep copy the ExtendedProperties collection.
       * XmlSchemaDataImporter.cs: Support import of extended properties.
       * XmlSchemaWriter.cs: Fix exception by writing the extended properties before simpletype element.
Veerapuram Varadhan vvaradhan ** Fixes #456234 - Patch by
	* OdbcDataReader.cs (GetValue): Handle SQL_NO_TOTAL sanely and 	use corresponding Decoder.GetChars instead of Encoding.GetString.
Veerapuram Varadhan vvaradhan Merge branch 'mono-2-6' of into mono-2-6 c3fc19f
Veerapuram Varadhan vvaradhan ** Fixes #582838 - Based on Patch by Jeffrey Alvarez
	* DbDataAdapter.cs (Update): Fetch columnName from column-mapping if found one, otherwise use source column name to fetch parameter value.
Commits on Jan 03, 2011
Zoltan Varga vargaz Implement VBByRefStr marshalling. Fixes #661917. 5c7b1c6
Commits on Jan 12, 2011
Rodrigo Kumpera kumpera Fix array assignability to one of its generic interfaces.
	* verify.c: mono_class_is_assignable_from can't handle
	IList<GTD<T>> x GTD[] since GTD[] won't have the right
	iface slots set. This isn't a problem for the runtime
	since GTD[] will never happen as it's an unrealizable type.

	Fixes #663815
Commits on Jan 13, 2011
Zoltan Varga vargaz Add null check to stelem_ref_check () jit icall. Fixes #664297. 07d2fee
Commits on Jan 14, 2011
Zoltan Varga vargaz Make OP_CHECK_THIS do a byte load on arm, since the source argument m…
…ight point to a vtype if a vtype method is inlined.
Commits on Jan 17, 2011
Zoltan Varga vargaz Avoid another case of infinite recursion in AOT. eae291a
Zoltan Varga vargaz OP_LCOMPARE_IM has type 'L', not 'I'. Fixes #664630.
This is the same as 6c02c15, but only for ia64, to avoid destabilizing the
Commits on Jan 18, 2011
Zoltan Varga vargaz Allow only primitive types/enums in RuntimeHelpers.InitializeArray (). 035c858
Zoltan Varga vargaz Disable some of the FastCopy fast paths since they are racy. 2f00e4b
Commits on Jan 20, 2011
Zoltan Varga vargaz Add a TID field to ThreadMirror which returns the system thread id. 16ff66d
Zoltan Varga vargaz Properly align the stack in the arm generic trampoline. 2e0755b
Jb Evain jbevain [bug] Prevent a GetMethodBody call on a dynamic method. Fixes 665788 5241fd6
Commits on Jan 21, 2011
Zoltan Varga vargaz Detect inifinite generic recursion differently in the AOT compiler. 8b45147
Zoltan Varga vargaz Only add imt items whose is_equal flag is set to the array passed to …
…the full-aot imt thunk.
Commits on Jan 22, 2011
bassamtabbara bassamtabbara Fix for 666225 3c36184
Zoltan Varga vargaz Fix an assert which happens when a call is made to Nullable.Unbox fro…
…m gshared code in AOT.
Gonzalo Paniagua Javier gonzalop [HttpListener] Fix incorrect 411 error
	Don't send a 411 for unknown methods without content length.
	No need to assign input_stream until requested.

	Fixes bug #666251.
Commits on Jan 25, 2011
Zoltan Varga vargaz Fix the previous aot fix. d2b2f98
Commits on Jan 27, 2011
Zoltan Varga vargaz Fix AOT support for types in the EXPORTEDTYPE table. e2d284b
Gonzalo Paniagua Javier gonzalop [HttpListener] Set each cookie in its own header
	Send a Set-Cookie header per cookie instead of a Set-Cookie2 with
	multiple cookies.

	Fixes bug #667550.
Commits on Jan 28, 2011
Zoltan Varga vargaz Add an AtLeast version to sdb's VersionInfo class. 86bb898
Commits on Jan 29, 2011
Zoltan Varga vargaz Clear the 'need_rgctx_tramp' flag when creating a synchronized wrappe…
…r. Fixes
Commits on Jan 30, 2011
Zoltan Varga vargaz Mark a newly added test as !FULLAOT. e6da86c
Commits on Jan 31, 2011
Zoltan Varga vargaz When using xdebug, allocate all code from the code manager of the roo…
…t domain. Hopefully fixes #666152.
Commits on Feb 01, 2011
Rodrigo Kumpera kumpera Implement a reference queue API.
	* gc.c: A reference queue allows one to queue
	callbcks for when objects are collected.
	It allows for safe cleanup of objects that can
	only be done when it is effectively collected.
	The major difference with regular finalization
	is that the collector makes sure the object
	was collected - and can't be resurrected.

	* gc-internal.h: Export entrypoints for the
	new API.
Rodrigo Kumpera kumpera Don't use finalization to cleanup dynamic methods.
        * reflection.c: Use a reference queue to cleanup
        dynamic methods instead of finalization.

        * runtime.c: Shutdown the dynamic method queue
        before runtime cleanup begins.

        * DynamicMethod.cs: No longer finalizable.

        * icall-def.h: Remove unused dynamic method icall.

        Fixes #660422

    Implement a reference queue API.

        * gc.c: A reference queue allows one to queue
        callbcks for when objects are collected.
        It allows for safe cleanup of objects that can
        only be done when it is effectively collected.
        The major difference with regular finalization
        is that the collector makes sure the object
        was collected - and can't be resurrected.

        * gc-internal.h: Export entrypoints for the
        new API.
Lucas Meijer make mono_print_thread_dump output to the visualstudio debugger windo…
…w, for better debugger experience
Commits on Feb 02, 2011
Rodrigo Kumpera kumpera Align call instructions to make code patching SMP safe.
	* mini-x86.c (emit_call): Align call instructions on
	3 mod 4 so the address is 4 bytes aligned and can't span
	two cache lines. This is required for proper SMP support
	as CAS is not atomic across cache lines.

	Fixes one of the crashes due to #667921.
Ankit Jain radical [xbuild] Fix a race condition in ToolTask.
 * class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/ToolTask.cs
 (ExecuteTool): When StartProcess returns, the process has already .Start()'ed
 If we subscribe to the output events after that, then for processes that
 finish executing before we can subscribe, we won't get the output/error
 events at all! So, pass the handlers to StartProcess itself, so that
 they get added before the process is started.
Ankit Jain radical [xbuild] Add ToolTask.EnvironmentVariables property.
	* class/Microsoft.Build.Utilities/Microsoft.Build.Utilities/ToolTask.cs
	(EnvironmentVariables): New.
	(ExecuteTool): Merge EnvironmentVariables with
	* class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/GenerateResource.cs
	(Resgen.Execute): Use EnvironmentVariables to set MONO_IOMAP=drive .
Marek Safar marek-safar [637935] Fixed 3.5 version of msbuild dlls to reference 3.5 version o…
…f the engine

MONO_PATH does not work for subsequent dlls, so have to workaround it by
using full path for dlls in 3.5 profile which does not have it's own
Ankit Jain radical [xbuild] Fix references to Microsoft.Build.* assemblies for 3.5 . 44fceae
Ankit Jain radical [xbuild] Fix case sensitive environment variables for ToolTask.
Use ProcessStringDictionary in ToolTask for EnvironmentVariables,
as this retains the original case of the keys. Without this
environment vars would all be passed as lowercase!

This was removed in a previous patch by mistake.
Ankit Jain radical [xbuild] Use files referenced by resx for dependency check.
For .resx resource files, check files referenced by the resx
file also, to determine whether to resgen it or not.

IsResgenRequired () has been taken from MonoDevelop
Ankit Jain radical [xbuild] Update regex to not require EndProject in a sln file.
In a solution file, a Project might not have a corresponding
EndProject. This seems to be supported by VS, so updating xbuild
to support that too. Updated the regex.
Ankit Jain radical [xbuild] Log TaskFinished even when task fails to initialize. 2f78e58
Ankit Jain radical [xbuild] Reset ConsoleLogger when a build finishes.
MSBuild hosts like monodevelop, which use the same logger
for multiple builds, get errors/warnings from older builds.
So, reset them whenever the BuildFinished event is raised.

ILogger.Shutdown () is invoked when the host is about to quit,
according to msdn, so can't use that.
Ankit Jain radical [xbuild] Reset cache of built targets, on a new project build.
All targets that get built are tracked by the engine, to avoid
unnecessary builds of targets. This should be reset on engine.Build,
unless it is explicitly requested *not to* reset it, via BuildFlags.
Ankit Jain radical [xbuild] Add ResolveAssemblyReferencesDependsOn .
Add GetFrameworkPaths and PrepareForBuild as dependencies for
the ResolveAssemblyReferences target. This is required when it is
invoked directly from MD.

Patch from Michael Hutchinson (
Ankit Jain radical [xbuild] Set default TargetFrameworkVersion=4.0 for ToolsVersion=4.0 d0c9312
Ankit Jain radical [xbuild] Fix bug #646941. Add explicit System.Core for >=3.5 projects.
For projects targeting TargetFrameworkVersion >= 3.5, automatically
add a reference to System.Core . This can be controlled via two

 $(AddAdditionalExplicitAssemblyReferences) and
 $(AdditionalExplicitAssemblyReferences) .

This is used only for projects built with ToolsVersion=4.0 .
Ankit Jain radical [xbuild] Emit /platform: for *mcs
Emit /platform:foo for the *mcs. Based on patch from
technomage1972 <> .
Ankit Jain radical [xbuild] Fix bug #660508 .
Use correctly escaped project+target names when
specifying project dependencies in the project
file generated from a .sln file.
Ankit Jain radical [xbuild] Fix bug #662355.
Support reference aliases in Csc task.
Ankit Jain radical [xbuild] Fix failing test in msbuild.tasks . 70c6111
Ankit Jain radical [xbuild] Fix bug #663180 .
Add "/Library/Frameworks/Mono.framework/External/xbuild" to
MSBuildExtensionsPath on MacOSX.

From the bug report:
The purpose of this directory is to provide a place for third-party
installers to place extensions where they will not be removed by Mono
upgrades. MonoDevelop patches this into the xbuild MSBuildExtensionsPath
for builds within MD but it would be useful to have it work outside of MD.
Ankit Jain radical [xbuild] Sync *PcFileCache.cs changes from monodevelop. 1247dcd
Ankit Jain radical [xbuild] Fix bug #663159 .
Emit location information in error messages for condition parsing

	* Microsoft.Build.BuildEngine/Token.cs: Add position information.
	* Microsoft.Build.BuildEngine/ConditionParser.cs: Track api changes.
	Improve error messages.
	(ExpectToken): Rename to ..
	(IsAtToken): .. this, to better reflect its behavior.
	* Microsoft.Build.BuildEngine/ConditionTokenizer.cs: Track api
	changes and improve error messages.
	* Microsoft.Build.BuildEngine/ConditionFactorExpresion.cs: Track api
Ankit Jain radical [xbuild] Fix bug #663180, second part.
Fix the way RunningOnMac is detected (use `uname`=="Darwin"), thanks
to Michael Hutchinson.
And use "/Library/Frameworks/Mono.framework/External/pkgconfig" as a
search path for pkg-config files on MacOSX.

	* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs:
	Change the order of paths.
	* Microsoft.Build.Engine/Microsoft.Build.Engine.dll.sources:
	Use MS.Build.Tasks/Utilities.cs, for using RunningOnMac .
	* Microsoft.Build.Tasks/Microsoft.Build.Tasks/PcFileCache.cs:
	Look in "/Library/Frameworks/Mono.framework/External/pkgconfig"
	for .pc files, on Mac.
	* Microsoft.Build.Tasks/Microsoft.Build.Tasks/Utilities.cs
	(RunningOnMac): New.
Ankit Jain radical [xbuild] Update man page, new search paths for extensions and .pc files. dc91b4b
Ankit Jain radical [xbuild] ConsoleLogger - Correctly indent multi-line messages.
Split and correctly indent multi-line messages in ConsoleLogger.
Ankit Jain radical [xbuild] Ensure trailing slash on some properties.
Ensure trailing slash on $(BaseIntermediateOutputPath) and
Ankit Jain radical [xbuild] Copy metadata from Project items to target outputs.
Copy metadata from Project items to the corresponding target
outputs in MSBuild task.

Fix the corresponding test also.
Ankit Jain radical [xbuild] Clear the built targets cache on project unload.
Remove the entries for a project from the built targets cache, on
project unload.

* Microsoft.Build.BuildEngine/Engine.cs (ClearBuiltTargetsForProject): New.
* Microsoft.Build.BuildEngine/Project.cs (BuiltTargetKeys): Remove.
(RemoveBuiltTargets): Use Engine.ClearBuiltTargetsForProject .
* Microsoft.Build.BuildEngine/Target.cs: Track api changes.
Ankit Jain radical [xbuild] Add $(TargetDir) property.
Add $(TargetDir) and set TargetPath only if its not set already.
Ankit Jain radical [xbuild] Fix bug #664349 .
* Microsoft.Build.BuildEngine/Project.cs (BuildInternal): Set needToReevaluate to
false, when reevaluating.
Ankit Jain radical [xbuild] Use the backing field directly to avoid evaluating again.
* Microsoft.Build.BuildEngine.Project.cs (InitializeProperties): Use
evaluatedProperties field instead of EvaluatedProperties property,
to avoid invoking a Reevaluate, since it is already in progress.
Ankit Jain radical [xbuild] Error out, if no target is found in a project. e436d80
Ankit Jain radical [xbuild] Update Novell copyright. 7e881af
Ankit Jain radical [xbuild] Fix bug #665004. Honor /nologo option.
* tools/xbuild/Parameters.cs (DisplayVersion): Remove, not required.
Ankit Jain radical [xbuild] Fix bug #665637.
Pass $(WarningsNotAsErrors) to Csc task.
Ankit Jain radical [xbuild] Correctly set CscToolExe if TargetFrameworkVersion is not set.
* tools/xbuild/xbuild/Microsoft.CSharp.targets: $(CscToolExe)
is set depending on the value of $(TargetFrameworkVersion).
Since, $(TargetFrameworkVersion)'s default value is set
by MS.Common.targets, set $(CscToolExe) *after* importing
MS.Common.targets .
Ankit Jain radical [xbuild] Support short-circuiting in conditions. 6141217
Ankit Jain radical [xbuild] Improve error messages for condition evaluation.
Also, add new ExpressionEvaluationException class.
Wrap Expression*Exceptions in InvalidProjectFileException with
info about the full condition being evaluated.
Ankit Jain radical [xbuild] Warn for unknown toolsVersion only on build.
Emit warning for unknown toolsversion only on a build, and
*not* everytime the project file is parsed.

* class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
(GetToolsVersionToUse): Add a 'emitWarning' bool param.
(Build): Call GetToolsVersionToUse () to ensure that a warning is
emitted in case of a unknown tools version.
Ankit Jain radical [xbuild] Handle non-existant 4.0 profile.
* class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Engine.cs:
Don't add 4.0 toolset.
* tools/xbuild/SolutionParser.cs: Don't use 4.0 ToolsVersion for
slnVersion=="11.0", let it default to 2.0 .
* tools/xbuild/xbuild/2.0/Microsoft.Common.targets:
* tools/xbuild/xbuild/3.5/Microsoft.Common.targets:
(GetFrameworkPaths): Emit an error instead of a warning if
TargetFrameworkVersion > 3.5 .
* tools/xbuild/xbuild/Microsoft.CSharp.targets: No 4.0 profile,
so don't set CscToolExe explicity. For both 2.0/3.5 gmcs will be
Rodrigo Kumpera kumpera Fix dynamic method cleanup at shutdown.
        * gc.c (mono_gc_cleanup): Cleanup all reference
        queues after regular finalization.

        * reflection.c: The dynamic method ref queue is finalized
        by the runtime itself.

        * runtime.c: Ditto.
Zoltan Varga vargaz Fix a warning. e8769c6
Zoltan Varga vargaz Add support for --debug=casts to Array:SetValue (). Fixes #668851. 87f1239
Commits on Feb 03, 2011
Zoltan Varga vargaz Fix the passing of vtype arguments for methods which return floats in…
… soft-float mode. Fixes #668905.
Commits on Feb 08, 2011
Rodrigo Kumpera kumpera Fix reference queue under boehm.
	* gc.c (finalizer_thread): Clean reference queues
	after finalizers are called to give boehm a chance
	to resurrect it.
Commits on Feb 09, 2011
Zoltan Varga vargaz Disable OP_INEG cfolding on 32 bit arches, as it breaks the LNEG deco…
…mposition. The previous special casing didn't work as the spill pass could insert a store between the ineg and the adc_imm. Fixes #670479.
Rodrigo Kumpera kumpera Cleanup the reference queue on domain unload.
	* gc.c (finalize_domain_objects): Clear reference
	queues on domain unload after running all finalizers.
Commits on Feb 10, 2011
Gonzalo Paniagua Javier gonzalop [Socket] Use the queue for generic read/write.
	This fixes a bug reported in stackoverflow and mono-list that affects
	Mono 2.8 and Mono 2.6 when using BeginReceive/BeginSend overloads that
	take an ILIst<ArraySegment> argument.
Ankit Jain radical [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.
Damien Diederen ztzg 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.
Damien Diederen ztzg 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 ztzg 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 ztzg 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.
Commits on Feb 11, 2011
Zoltan Varga vargaz Change some Sleep(0)'s to Sleep(1) in the soft-debugger code to avoid…
… 100% cpu utilization on windows.
Zoltan Varga vargaz Make the wait in the finalizer thread alertable to fix sdb on windows…
…. Fixes #670619.
Commits on Feb 12, 2011
Gonzalo Paniagua Javier gonzalop [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.
Commits on Feb 13, 2011
Zoltan Varga vargaz Fix reading of cattr arguments of type Type[]. Fixes #670331. 6af2596
Gonzalo Paniagua Javier gonzalop [HttpListener] Avoid multiple calls to Close()
	HttpListenerResponse could be calling HttpConnection.Close() more than
Alexandre Mutel xoofx Fix sizeof(T) in non-gshared code. Fixes #580189. bbf30a6
Gonzalo Paniagua Javier gonzalop [HttpWebRequest] Avoid nullref on empty cookie header.
	If the Set-Cookie header is empty, the cookie instance is not created.
	Fixes bug #670189.
Gonzalo Paniagua Javier gonzalop [HttpWebRequest] Use the timeout in GetResponse()
	The timeout was not being used in GetResponse.
	Fixes bug #603794.
Commits on Feb 14, 2011
Gonzalo Paniagua Javier gonzalop [HttpWebRequest] EndGetResponse already does this. ed3e186
Gonzalo Paniagua Javier gonzalop [HttpListener] UserHostName includes the port. 20e6ad1
Commits on Feb 15, 2011
Ankit Jain radical [xbuild] Fix bug #671700, resource naming in presence of "Link".
AssignTargetPath.cs: If 'Link' metadata is present, then use that
as the target path.

Add relevant test.
Commits on Feb 17, 2011
Rodrigo Kumpera kumpera Make sure we keep a root for the delegates when calling them.
	* method-to-ir.c (mono_emit_method_call_full): Make sure
	we keep a root for delegates when calling them using the
	fast delegate dispatch.

	Fixes #667921
Commits on Feb 18, 2011
Zoltan Varga vargaz Set cfg->uses_rgctx_reg in another code path too on arm, to fix --reg…
…ression generics.exe.
Commits on Feb 19, 2011
Zoltan Varga vargaz Reorganize the way jump_target_hash is stored in the JIT. Free entrie…
…s in jump_target_hash which point inside a dynamic method when it is freed. Fixes #669815.
Commits on Feb 20, 2011
Zoltan Varga vargaz Make the var/mvar caches per-image, since the generic params they ref…
…er to can be freed on domain unload. Fixes part of #672939.
Zoltan Varga vargaz Implement mono_memory_barrier () and OP_MEMORY_BARRIER for ARM. 7bd422c
Commits on Feb 21, 2011
Zoltan Varga vargaz Fix arm thunk creation in dynamic methods. Fixes #673828. 95daefa
Commits on Feb 22, 2011
Zoltan Varga vargaz Avoid returning TRUE from mono_domain_finalize () if it is interrupte…
…d by sdb. Fixes #673592.
Ankit Jain radical [xbuild] Use the env var $MSBuildExtensionsPath before trying other p…

Change the order of the "search paths", so that the environment
variable can always override it.
Update the man page to reflect the change.
Ankit Jain radical [xbuild] Add new reserved properties $(MSBuildThisFile*).
Also, fixes bug #668955.

Add new reserved properties $(MSBuildThisFile*).
Unlike the $(MSBuildProjectFile), the *This* properties are evaluated
in the context where they were used. Eg. if such a property was
referenced in a PropertyGroup, then it would refer to the file
containing the that definition, and *not* the main project file.
It applies to items and tasks/targets also.

* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildChoose.cs:
* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildItemGroup.cs:
* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/BuildPropertyGroup.cs:
Add DefinedInFileName property.

* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs:
Add a stack to keep track the "current" file, which is used to set
the $(MSBuildThisFile*) properties. Update the properties on

* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/GroupingCollection.cs:
Push/Pop the "current" file, when evaluating a property/item/etc.

* Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs:
Push/Pop the "current" file, when building. This ensures that the
references in the target definition get evaluated correctly.

* Microsoft.Build.Engine/Test/Microsoft.Build.BuildEngine/ProjectTest.cs:
Add corresponding test.
Commits on Feb 23, 2011
Zoltan Varga vargaz Fix the 2.6 build. 34a908c
Ankit Jain radical [xbuild] Fix bug #674337.
Use appropriate path separator for handling environment variable
Zoltan Varga vargaz Fix 2.6 arm build. dd157a0
Commits on Feb 24, 2011
Zoltan Varga vargaz Disallow EventType.Step in EnableEvents (). Fixes #674490. 2fe7772
Zoltan Varga vargaz Revert "Properly align the stack in the arm generic trampoline."
This reverts commit 2e0755b.

This is not needed on 2.6 since MonoLMF is bigger by one word.
Zoltan Varga vargaz Only use memory barriers on arm when running on armv6 or later. 157c94f
Ankit Jain radical [xbuild] Fix bug #674630.
Handle errors in trying to create AssemblyName from invalid
full names.
Ankit Jain radical [xbuild] Rename method to make it more consistent.
* Microsoft.Build.Tasks/Microsoft.Build.Tasks/AssemblyResolver.cs
(GetAssemblyNameFromFile): Rename to ..
(TryGetAssemblyNameFromFile): .. this, to make it consistent with
the similar method TryGetAssemblyNameFromFullName .
Track api changes.
* Microsoft.Build.Tasks/Microsoft.Build.Tasks/ResolveAssemblyReference.cs:
Track api changes.
Zoltan Varga vargaz Fix stop_debugger_thread () on windows. Shutdown both ends of the con…
…nection socket since shutting down only the receive part doesn't seem to work on windows. Wait for the debugger thread to exit in a loop, since we don't use condvars on windows.
Commits on Feb 28, 2011
Ankit Jain radical [xbuild] Remove property if Output TaskParameter is null.
If the TaskParameter for Output of a task is null, then remove
the corresponding property.
Add relevant test.
Ankit Jain radical [xbuild] Add $(MSBuildToolsRoot) reserved property. 5ca8d8d
Ankit Jain radical [xbuild] Add missing property to Error/Warning tasks. 83d7088
Ankit Jain radical [xbuild] ToolTask - add missing api
* Microsoft.Build.Utilities/Microsoft.Build.Utilities/ToolTask.cs
(GetProcessStartInfo): Add missing api. This allows more control
over the execution of the tool.
Ankit Jain radical [xbuild] Add support for multi-targeting arbitrary frameworks.
ToolsVersion 4.0 supports targeting arbitrary frameworks defined
by FrameworkList.xml files and referenced by $(TargetFrameworkMoniker),
which is of the format:

built as:

eg. '.NETFramework,Version=v4.0' .

Frameworks are searched for in (order):

  1. Paths specified in the environment variable $XBUILD_FRAMEWORK_FOLDERS_PATH
  2. /Library/Frameworks/Mono.framework/External/xbuild-frameworks on Mac OSX.
  3. MSBuild property $(TargetFrameworkRoot)
  4. $prefix/lib/mono/xbuild-frameworks (default location)

.NET frameworks 2.0/3.0/3.5/4.0 have corresponding FrameworkList.xml
files now, which allows projects to target them. Custom frameworks like
MonoDroid can install suitable FrameworkList.xml files, and projects
can target them using the correct $(TargetFrameworkIdentifier) and

Update man page.
Ankit Jain radical [xbuild] GetReferenceAssemblyPaths - add missing license header. 4185cbf
Ankit Jain radical [xbuild] ResolveAssemblyReference - add missing api. a20ee35
Ankit Jain radical [xbuild] ResolveAssemblyReference - log task parameters cada63f
Ankit Jain radical [xbuild] Make Engine.DefaultToolsVersion 2.0 .
Engine.DefaultToolsVersion is used when a project is unable
to determine a suitable ToolsVersion to use. Change this fallback
version to 2.0 . This allows vs2005 (.net 2.0) projects which
don't have ToolsVersion explicitly set, to build. Newer projects
set ToolsVersion by default.
Ankit Jain radical [xbuild] ToolTask - make error column check a little non-specific. 0e71e1c
Commits on Mar 01, 2011
Zoltan Varga vargaz Fix 2.6 build on windows with old glib versions. e2a82df
Commits on Mar 07, 2011
Zoltan Varga vargaz Avoid an assert when returning nullable null's from sdb invokes. Fixe…
…s #676587.
Commits on Mar 08, 2011
Ankit Jain radical [xbuild] Exec task - add support for custom error/warning regex.
Add 4.0 api, CustomErrorRegularExpression and
Ankit Jain radical [xbuild] Vbc task - make error column check a little non-specific. bcffafe
Ankit Jain radical [xbuild] Fix assembly name comparison when resolving references.
AssemblyResolver.cs (AssemblyNamesCompatible): If either of the
references don't have a public key token, then ignore that.
Ankit Jain radical [xbuild] Fix warnings. b654597
Ankit Jain radical [xbuild] Add support for Before/AfterTargets.
A target 'foo' can have BeforeTargets or AfterTargets attributes,
which list the targets before or after, 'foo' should be run.
This is a 4.0 feature.

* Project.cs (ProcessBeforeAndAfterTargets): New.
* Target.cs: Run the before/after targets in the correct order.

* TargetTest.cs (TestBeforeAndAfterTargets): New.
Ankit Jain radical [xbuild] Log build errors and raise events even if a build fails. fce927c
Ankit Jain radical [xbuild] DirectoryScanner.HasWildcard - new method 1d8ef0f
Ankit Jain radical [xbuild] Expression.ParseAs<T> - new method bdf6bca
Ankit Jain radical [xbuild] ImportCollections.TryGetImport and other fixes 96f935b
Ankit Jain radical [xbuild] ImportedProject - remove unnecessary catch/throw
Remove the catch { throw; }, this truncated the stack also.
Ankit Jain radical [xbuild] Add support for wildcards in Import.
With 4.0 profile, <Import ..> can have wildcards. This works correctly
with our multiple MSBuildExtensionsPath also.

If the import references $(MSBuildExtensionsPath) property, then the
each extension path is used to resolve the import, and the search
stop as soon as an import is found.

If such an import uses wildcard, then the search stops at the
extension path in which *atleast one* file got imported.
And the import fails if any invalid project file is encountered.

This commit also heavily refactors the Import code to simplify
in the face of the new features, and improves error detection
and reporting.

ImportTest.cs: Add test for wildcards.
Ankit Jain radical [xbuild] Update man page with info about FrameworkList.xml 45d9fbd
Ankit Jain radical [xbuild] Add hooks for extending .sln builds.
Add hooks in the .sln.proj generated from .sln files.

1. It imports
   This is done only in case of 4.0 projects, as imports with wildcard
   is a 4.0 feature.

2. And it imports before.Foo.sln.targets and after.Foo.sln.targets from
   the same dir as the .sln file.
Ankit Jain radical [xbuild] Fix bug #676671. Raise AnyEvent . 86b5bae
Ankit Jain radical [xbuild] Add missing api for Target.
* Target.cs (Outputs): Add new public property by this name. And rename
old one to ..
(OutputsAsITaskItems): .. this.
Ankit Jain radical [xbuild] Set @(CollectedBuildOutput) for projects build from .sln . 9b2c95d
Ankit Jain radical [xbuild] LogExtensions.LogError - disambiguate.
* LogExtensions.cs(LogError): Rename the 'filename' overload to ..
(LogErrorWithFilename): .. this.
* Engine.cs: Track api changes.
Ankit Jain radical [xbuild] ConsoleLogger - parse params only on Initialize. cdb0494
Ankit Jain radical [xbuild] Implement FileLogger . Fix #676650 .
* FileLogger.cs: Implement

Add corresponding command line args for file loggers.
Update man page.
Commits on Mar 10, 2011
Zoltan Varga vargaz Mark threads created when calling from native code into the runtime a…
…s background threads. Fixes #678164.
Zoltan Varga vargaz Fix the previous change. 34519d2
Commits on Mar 11, 2011
Ankit Jain radical [xbuild] Clean up test logs.
Remove unnecessary debug spew for tests that pass.
Ankit Jain radical [xbuild] Fix test on windows.
AssignTargetPathTest.TestLink : Fix test on windows
Ankit Jain radical [xbuild] Evaluate Import with MSBuildThisFile* properties set. 4d9e096
Ankit Jain radical [xbuild] Function names are case insensitive. a277e24
Ankit Jain radical [xbuild] Handle unknown exceptions.
Re-throw any unknown exceptions.
* Project.cs: Log the exception, doing it here also, so that direct
project.Build(..) call failures also get logged.
* Engine.cs: Log the unknown exception only if the build is running.
This allows for the case when Project.Build caught it and ended the
Ankit Jain radical [xbuild] Set ProjectFile and TargetName metadata on target outputs.
Set "MSBuildProjectFile" and "MSBuildTargetName" metadata on target outputs.
Ankit Jain radical [xbuild] xbuild/Main.cs - remove unnecessary catch/throw. 23c41a3
Ankit Jain radical [xbuild] Don't report Imports ignored because of false conditions. 3a4c85c
Ankit Jain radical [xbuild] Emit list of projects in the .sln.proj
Emit list of projects in the solution as @(ProjectReference) items
in the generated .sln.proj file. This would be useful for extending
solution builds.
Ankit Jain radical [xbuild] Throw ArgumentNullException if target name is null d0cafde
Ankit Jain radical [xbuild] Microsoft.Common.targets - import Before/After targets files.
With this, Microsoft.Common.targets will import
at the beginning of the file and
at the end of the file.

So, this would import all files from (eg.):

This can be disabled by setting the bool properties -
$(ImportByWildcardBeforeMicrosoftCommonTargets) and
Commits on Mar 14, 2011
Zoltan Varga vargaz Avoid calling class cctors during JITting when the same class needs i…
…nitialization more than once during a method. Fixes #679467.
Zoltan Varga vargaz Put back the definition of MONO_ARCH_USE_OP_TAIL_CALL in mini-amd64.h…
… which got removed by mistake by a previous commit.
Commits on Mar 16, 2011
Zoltan Varga vargaz Add a cache for virtual generic thunks to avoid freeing those created…
… by AOT.
Zoltan Varga vargaz Fix support for generic virtual thunks in full-aot. cc08e3c
Commits on Mar 17, 2011
Zoltan Varga vargaz Fix the title of the Mono.Debugger.Soft assembly monodoc. c3e6d8a
Zoltan Varga vargaz Switch to the domain of the assembly in question while executing CMD_…
…ASSEMBLY_GET_TYPE, so referenced assemblies are found. Fixes #679586.
Commits on Mar 18, 2011
Zoltan Varga vargaz Emit all AOT symbols to 4 bytes on apple. a9e36dc
Commits on Mar 21, 2011
Zoltan Varga vargaz Fix the length of 'break' on ppc. 3c24090
Commits on Mar 23, 2011
Marek Habersack grendello [] Normalization of cryptographic uses in
Backport of commit a22389f
    Normalization of cryptographic uses in

    * System.Web.Configuration_2.0/MachineKeyRegistryStorage.cs:
    Remove key length check and generic key generation.

    * System.Web.Configuration_2.0/MachineKeySection.cs: Add support for 4.0
    ValidationAlgorithm and the use of custom algorithms (validation and
    decryption). Allow the use of any, valid, key length (based on the
    algorithm). Let each algorithm creates its own key (e.g. special needs,
    default length...)

    * System.Web.Configuration_2.0/MachineKeySectionUtils.cs: Remove key
    generation (from random) code and 192bits key length hack (won't work
    with custom algorithms). Add support for new (4.0) algorithms, including
    custom ones. Provide uniform/shared code to Encrypt/Decrypt, Sign/Verify
    and EncryptSign/VerifyDecrypt using MachineKeySection data.

    * System.Web.Configuration_2.0/MachineKeyValidation.cs: Add new (4.0)

    * System.Web.Configuration_2.0/MachineKeyValidationConverter.cs: Add
    support for new (4.0) algorithms.

    * System.Web.Handlers/AssemblyResourceLoader.cs: Use the new common
    cryptographic code and base64 the encrypted data.

    * System.Web.Security/FormsAuthentication.cs: Use the new common
    cryptographic code and base64 the signed and/or encrypted data.

    * System.Web.Security/MembershipHelper.cs: Use the new common
    cryptographic code - this should be 100% compatible with existing data.

    * System.Web.Security/RolePrincipal.cs: Use the new common cryptographic

    * System.Web.Security/SqliteMembershipProvider.cs: Adapt code for
    internal API change.
Marek Habersack grendello [] A few moves/changes following previous patch review
Backport of commit 21d2c6a

    * Makefile: Compile tests with TEST defined (to include System.Web.Util.
    MachineKeySectionUtils unit tests)
    * System.Web.dll.sources: Move MachineKeySectionUtils.cs from System.
    Web.Configuration_2.0 to System.Web.Util
    * System.Web_test.dll.sources: Move MachineKeySectionUtilsTest.cs from
    System.Web.Configuration_2.0 to System.Web.Util

    * System.Web.Configuration_2.0/MachineKeySection.cs: Adjust using
    clauses. Uncomment some code. Fix TripleDES versus 3DES for Validation
    under NET_4_0. Remove 'private' on fields/methods.
    * System.Web.Handlers/AssemblyResourceLoader.cs: Adjust using clauses
    * System.Web.Security/MembershipHelper.cs: Adjust using clauses
    * System.Web.Security/RolePrincipal.cs: Adjust using clauses
    * System.Web.SessionState_2.0/SessionId.cs: Adjust using clauses
    * System.Web.UI/LosFormatter.cs: Adjust using clauses.
    * System.Web.Util/MachineKeySectionUtils.cs: Moved from System.Web.
    Configuration_2.0. Rename namespace and remove 'internal' on type

    * Test/System.Web.Util/MachineKeySectionUtilsTest.cs: Moved from Test/
    System.Web.Configuration/MachineKeySectionTest.cs. Add test case for
    TripleDES versus 3DES
Marek Habersack grendello [] make sure the string we pass to DecryptAssemblyResource is …
…a valid Base64 string

Backport of commit 2a6bc36
Marek Habersack grendello [] Part of fix for bug #649546. A partial rewrite of the web/s…
…cript resource handler.

Backport of commit a9cb57c

    * System.Web/System.Web.Handlers/AssemblyResourceLoader.cs: AssemblyResourceLoader/ScriptResourceHandler must
      always generate the same URL for every assembly+resource pair, or otherwise the browser would re-fetch
      the resource in situations where it is not desired (e.g. during an async request to the server to update
      a panel).
      The generated URLs are not encrypted using real encryption, just hashed.
      In addition, the handler code got modernized a bit.

    * System.Web.Extensions/System.Web.UI/ScriptManager.cs: scriptStartupBlock is a 3.5+ thing

    * System.Web.Extensions_1.0/Makefile: use the 1.0 Microsoft AJAX library for this compat assembly

    * System.Web/System.Web.Util/MachineKeySectionUtils.cs: made GetValidationKey public
Sebastien Pouliot Fix randomly failing unit test
* MachineKeySectionUtilsTest.cs: Do not assume xor will change a byte
Marek Habersack grendello [] Update of fix for bug #648080. Properly populate embedded r…
…esources cache
Commits on Mar 28, 2011
Zoltan Varga vargaz Fix a case where class->instance_size was not set for dynamic classes. 6d45f25
Commits on Mar 29, 2011
Ankit Jain radical [xbuild] Allow skipping target framework moniker lookup.
* tools/xbuild/xbuild/4.0/Microsoft.Common.targets
(GetReferenceAssemblyPaths): Don't look up framework directories
for $(TargetFrameworkMoniker) is $(_TargetFrameworkDirectories) is
already defined. This can be used to override moniker lookups.
Commits on Mar 30, 2011
Zoltan Varga vargaz Call SleepEx in a loop in the Thread.Sleep () icall, to avoid a race …
…when the sleep is interrupted. Fixes #683519.
Zoltan Varga vargaz Fix the previous change. 5d5011c
Commits on Apr 01, 2011
Rodrigo Kumpera kumpera Fix win32 file name canonicalization.
	* mono-path.c (mono_path_canonicalize): Properly canonicalize
	non UNC paths with an extra backslash. Eg:
	c:\foo\\bar was been canonicalized to c:\\foo\bar.

	This was breaking assembly loading in some rare cases.
Commits on Apr 03, 2011
Kenneth Skovhede kenkendk Fix the handling of the '%f' descriptor in DataConverter.Unpack (). F…
…ixes #683712.
Commits on Apr 09, 2011
Zoltan Varga vargaz Add a membar to libgc's UNLOCK () on arm. Fixes #683409. a166a78
Zoltan Varga vargaz Pass HAVE_ARMV6 to libgc on darwin too. c711c87
Commits on Apr 17, 2011
Zoltan Varga vargaz Fix Object.MemberwiseClone () on arrays. Fixes #688033. e2ba528
Commits on Apr 18, 2011
Andrew Jorgensen get-monolite-latest now pulls a versioned archive
In order to ensure that monolite actually works you need to ensure that
the corlib in it has the same version as your runtime.  Monolite
archives are now versioned monolite-MONO_CORLIB_VERSION-DATE.
Commits on Apr 28, 2011
Lluis Sanchez slluis [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.
Commits on May 02, 2011
Zoltan Varga vargaz Fix support for parameters with generic constraints in Type.IsAssigna…
…bleFrom (). Fixes #691119.
Zoltan Varga vargaz Implement BSTR icalls even when COM is disabled. Fixes #690255. 054b22b
Commits on May 04, 2011
Zoltan Varga vargaz Implement GHashTable iterators. 04fd373
Commits on May 06, 2011
Lluis Sanchez slluis [Web Services] Fix regression caused by previous commit
Fixes a regression caused by the implementation of support
for optional parameters. GlobalIndex was not being set
when using SOAP RPC protocol.
Commits on Jun 15, 2011
Zoltan Varga vargaz Apply a workaround for a gcc 4.6 problem on arm.

Commits on Jul 11, 2011
Zoltan Varga vargaz Fix the length of r4const on arm. 15b7c69
Commits on Jul 12, 2011
Zoltan Varga vargaz Avoid register allocation problems when a try clause is nested inside…
… a handler block.
Zoltan Varga vargaz Add a test for 7cb704d. ec866ff
Commits on Jul 24, 2011
Zoltan Varga vargaz Fix a crash in the soft-float decompose code when a branch following …
…an fcompare is optimized away. Fixes #705186.
Zoltan Varga vargaz Fix 2.6 build. 9c27d54
Commits on Jul 25, 2011
Miguel de Icaza migueldeicaza Fix invocation to syslog f08f8a2