Andres G. Aragoneses [Mon, 3 Sep 2012 10:38:39 +0000 (11:38 +0100)]
xbuild: fix style in test
Pointed out by Ankit.
Andres G. Aragoneses [Mon, 3 Sep 2012 10:33:22 +0000 (11:33 +0100)]
Merge branch 'xbuild_improvements' of github.com:knocte/mono into xbuild_improvements
Andres G. Aragoneses [Wed, 22 Aug 2012 23:08:32 +0000 (00:08 +0100)]
MSBuild.Engine: use a buildtask enumerator that throws exceptions
InvalidOperationExceptions were not being thrown when asking for the
Current element if the enumerator had finished (or not started)
iterating.
Jeffrey Stedfast [Wed, 22 Aug 2012 17:43:36 +0000 (13:43 -0400)]
[xbuild] Fixed Microsoft.Portable.CSharp.targets to use smcs
Fixes bug #6649
Marek Safar [Tue, 21 Aug 2012 12:44:28 +0000 (14:44 +0200)]
Better error message for ref/out argument mismatch
Marek Safar [Tue, 21 Aug 2012 11:58:28 +0000 (13:58 +0200)]
Merge Alexander Chebaturkin SoC 2012 changes
During the Google Summer of Code, I was required to implement Interval Analysis for Code Contracts static verifier (cccheck tool). Please see information of changes at http://chebaturkin.blogspot.com/2012/08/code-contracts-static-verifier.html.
Zoltan Varga [Mon, 20 Aug 2012 10:08:12 +0000 (12:08 +0200)]
Escape windows paths in DWARF debug info.
Jérémie Laval [Mon, 20 Aug 2012 00:24:22 +0000 (17:24 -0700)]
Merge pull request #435 from mono-soc-2012/svick/dataflow
Svick/dataflow
Petr Onderka [Sun, 19 Aug 2012 23:38:13 +0000 (01:38 +0200)]
Fixed race condition in Receive()
Petr Onderka [Sun, 19 Aug 2012 23:37:35 +0000 (01:37 +0200)]
Project file changes by Visual Studio
Petr Onderka [Sun, 19 Aug 2012 19:29:01 +0000 (21:29 +0200)]
Fixed race condition in race condition test
Petr Onderka [Sun, 19 Aug 2012 18:34:18 +0000 (20:34 +0200)]
Finished adding documentation for non-public types and methods
Petr Onderka [Sun, 19 Aug 2012 17:01:20 +0000 (19:01 +0200)]
Removed nonsensical lock
Petr Onderka [Sun, 19 Aug 2012 15:41:22 +0000 (17:41 +0200)]
Correctly implemented Choose()
Petr Onderka [Sat, 18 Aug 2012 21:24:31 +0000 (23:24 +0200)]
Started adding documentation for non-public types and methods
Also some minor refactoring
Petr Onderka [Sat, 18 Aug 2012 20:23:51 +0000 (22:23 +0200)]
Fixed completion of PropagatorWrapperBlock
Petr Onderka [Sat, 18 Aug 2012 18:53:05 +0000 (20:53 +0200)]
Removed nonsensical call that didn't actually do anything
Petr Onderka [Wed, 15 Aug 2012 13:00:25 +0000 (15:00 +0200)]
No need to start new Task if there is only one item in the queue
Petr Onderka [Mon, 13 Aug 2012 22:01:49 +0000 (00:01 +0200)]
Some tests need more time
Petr Onderka [Mon, 13 Aug 2012 22:01:21 +0000 (00:01 +0200)]
Work around issue with old NUnit and comparing collections
Petr Onderka [Mon, 13 Aug 2012 21:16:41 +0000 (23:16 +0200)]
Don't cancel unstarted Tasks on cancellation
Unstarted Tasks can't be cancelled, because they have to
correctly modify degreeOfParallelism.
Petr Onderka [Mon, 13 Aug 2012 14:40:22 +0000 (16:40 +0200)]
Fixed unit test to work with old NUnit
Petr Onderka [Wed, 8 Aug 2012 22:01:53 +0000 (00:01 +0200)]
Handle consumeToAccept with MaxNumberOfGroups correctly
Petr Onderka [Wed, 8 Aug 2012 20:34:54 +0000 (22:34 +0200)]
Store multiple exceptions in Completion correctly
Petr Onderka [Wed, 8 Aug 2012 20:33:46 +0000 (22:33 +0200)]
Added test for MaxMessages with BroadcastBlock
Petr Onderka [Sat, 4 Aug 2012 16:27:57 +0000 (18:27 +0200)]
consumeToAccept shouldn't reserve
Petr Onderka [Sat, 4 Aug 2012 16:26:05 +0000 (18:26 +0200)]
Make sure cancellation behaves the same as faulting wrt output queue
Petr Onderka [Wed, 25 Jul 2012 19:58:06 +0000 (21:58 +0200)]
Implemented execution block ctors for async actions
Petr Onderka [Mon, 23 Jul 2012 19:25:06 +0000 (21:25 +0200)]
Implemented NullTarget()
Petr Onderka [Mon, 23 Jul 2012 18:32:03 +0000 (20:32 +0200)]
Fixed declaration differences
Petr Onderka [Mon, 23 Jul 2012 17:52:09 +0000 (19:52 +0200)]
Made block interfaces variant
Petr Onderka [Mon, 23 Jul 2012 17:12:44 +0000 (19:12 +0200)]
Fixed race condition in OfferMessage()
Petr Onderka [Wed, 18 Jul 2012 17:30:43 +0000 (19:30 +0200)]
Check key for null in ConcurrentDictionary
Petr Onderka [Wed, 18 Jul 2012 16:04:22 +0000 (18:04 +0200)]
Forgot to use AssertEx
Petr Onderka [Wed, 18 Jul 2012 16:02:51 +0000 (18:02 +0200)]
Added forgotten files to sources
Petr Onderka [Sat, 21 Jul 2012 19:44:17 +0000 (21:44 +0200)]
Throw the correct exception if Receive() is cancelled
Petr Onderka [Sat, 21 Jul 2012 19:35:16 +0000 (21:35 +0200)]
Check for null target in ConsumeMessage()
Previously, the correct exception was thrown later on,
but only by accident.
Petr Onderka [Sat, 21 Jul 2012 18:46:12 +0000 (20:46 +0200)]
Only reserved can be consumed after fault
Petr Onderka [Sat, 21 Jul 2012 18:15:34 +0000 (20:15 +0200)]
Didn't check for null target in LinkTo() with predicate
Petr Onderka [Sat, 21 Jul 2012 18:12:27 +0000 (20:12 +0200)]
Implemented OutputAvailableAsync()
Petr Onderka [Fri, 20 Jul 2012 21:45:16 +0000 (23:45 +0200)]
Implemented LinkTo() with predicate
Petr Onderka [Thu, 19 Jul 2012 21:06:40 +0000 (23:06 +0200)]
Fixed sending from WriteOnceBlock
Petr Onderka [Thu, 19 Jul 2012 19:51:17 +0000 (21:51 +0200)]
Fixed sending from BroadcastBlock
Petr Onderka [Wed, 18 Jul 2012 20:30:58 +0000 (22:30 +0200)]
Corrected Receive() and ReceiveAsync()
Petr Onderka [Wed, 18 Jul 2012 15:52:46 +0000 (17:52 +0200)]
Valid header can't have id 0
Petr Onderka [Mon, 16 Jul 2012 20:43:03 +0000 (22:43 +0200)]
Implemented SendAsync()
Petr Onderka [Mon, 16 Jul 2012 18:05:36 +0000 (20:05 +0200)]
Release postponed messages after Complete()
Petr Onderka [Mon, 16 Jul 2012 17:19:45 +0000 (19:19 +0200)]
ReleaseReservation() means the message is no longer postponed
Petr Onderka [Mon, 16 Jul 2012 14:45:43 +0000 (16:45 +0200)]
Handle completion correctly in Receive()
Petr Onderka [Sat, 7 Jul 2012 22:57:15 +0000 (18:57 -0400)]
new CancellationTokenRegistration().Dispose() shouldn't throw
Petr Onderka [Wed, 11 Jul 2012 16:52:52 +0000 (18:52 +0200)]
Verify arguments in public methods
Petr Onderka [Wed, 11 Jul 2012 13:14:38 +0000 (15:14 +0200)]
Negative header ids should be valid
Petr Onderka [Mon, 9 Jul 2012 16:30:30 +0000 (18:30 +0200)]
Made tests compatible with NUnit 2.4
Petr Onderka [Sun, 8 Jul 2012 20:48:03 +0000 (22:48 +0200)]
Added support for MaxNumberOfGroups
Petr Onderka [Sun, 8 Jul 2012 18:21:42 +0000 (20:21 +0200)]
Fixed completion of JoinTargets
Petr Onderka [Sat, 7 Jul 2012 21:21:46 +0000 (17:21 -0400)]
No need to use .Net 4.5-specific methods
Petr Onderka [Sat, 7 Jul 2012 21:26:41 +0000 (23:26 +0200)]
Fixed tests, so that they work under MS .Net
Also a small change in ToString().
Petr Onderka [Sat, 7 Jul 2012 21:07:18 +0000 (23:07 +0200)]
Fixed bug in unit test
Petr Onderka [Sat, 7 Jul 2012 20:30:50 +0000 (22:30 +0200)]
Don't start new tasks after fault
Petr Onderka [Sat, 7 Jul 2012 10:51:52 +0000 (06:51 -0400)]
More fixing of Linux build
Petr Onderka [Fri, 6 Jul 2012 20:30:29 +0000 (22:30 +0200)]
Don't use InternalsVisibleTo for testing
Petr Onderka [Fri, 6 Jul 2012 20:26:24 +0000 (22:26 +0200)]
Fixed non-greedy blocks with BoundedCapacity
Petr Onderka [Fri, 6 Jul 2012 15:53:38 +0000 (17:53 +0200)]
Replaced Volatile.Write() with the volatile modifier
Mono doesn't support the generic version of Volatile.Write()
Petr Onderka [Fri, 6 Jul 2012 15:20:37 +0000 (17:20 +0200)]
Test TriggerBatch() when the block is empty
Petr Onderka [Fri, 6 Jul 2012 15:06:58 +0000 (17:06 +0200)]
Added missing files to .sources
Petr Onderka [Thu, 5 Jul 2012 21:53:45 +0000 (23:53 +0200)]
Added support for Greedy
Petr Onderka [Thu, 5 Jul 2012 12:23:06 +0000 (14:23 +0200)]
Added support for PropagateCompletion
Petr Onderka [Thu, 5 Jul 2012 10:50:24 +0000 (12:50 +0200)]
Added support for MaxMessages
Petr Onderka [Wed, 4 Jul 2012 21:08:36 +0000 (23:08 +0200)]
Fixed bug in unit test
Petr Onderka [Wed, 4 Jul 2012 21:03:19 +0000 (23:03 +0200)]
Added support for BoundedCapacity
Petr Onderka [Wed, 4 Jul 2012 18:48:30 +0000 (20:48 +0200)]
Corrected sending messages to targets in most blocks
Petr Onderka [Tue, 3 Jul 2012 11:56:59 +0000 (13:56 +0200)]
Added support for TaskScheduler
Petr Onderka [Tue, 3 Jul 2012 10:38:52 +0000 (12:38 +0200)]
Post() after fault should return false
Petr Onderka [Mon, 2 Jul 2012 22:40:25 +0000 (00:40 +0200)]
Corrected handling of exceptions
Also fixed some race conditions.
Petr Onderka [Sun, 1 Jul 2012 12:30:38 +0000 (14:30 +0200)]
Handle null results in TransformManyBlock correctly
Petr Onderka [Sun, 1 Jul 2012 12:28:12 +0000 (14:28 +0200)]
Exceptions during execution cause the block to fault
Petr Onderka [Sat, 30 Jun 2012 16:50:29 +0000 (18:50 +0200)]
Fixed MaxDegreeOfParallelism, added support for MaxMessagesPerTask
Petr Onderka [Sat, 30 Jun 2012 13:48:49 +0000 (15:48 +0200)]
Added support for cancallation to all blocks
Petr Onderka [Sat, 30 Jun 2012 13:11:28 +0000 (15:11 +0200)]
Added support for NameFormat to all blocks
Petr Onderka [Fri, 29 Jun 2012 20:02:55 +0000 (22:02 +0200)]
Unit test for deadlock that was in JoinBlock
Petr Onderka [Fri, 29 Jun 2012 18:11:28 +0000 (20:11 +0200)]
Added BatchedJoinBlock`3
Petr Onderka [Mon, 25 Jun 2012 21:07:19 +0000 (23:07 +0200)]
Implemented BatchedJoinBlock
Petr Onderka [Mon, 25 Jun 2012 18:24:40 +0000 (20:24 +0200)]
Remove "optimization" that could cause a deadlock
Petr Onderka [Mon, 25 Jun 2012 18:09:14 +0000 (20:09 +0200)]
Fixed deadlock in JoinBlock by using a lock
Petr Onderka [Mon, 25 Jun 2012 17:28:47 +0000 (19:28 +0200)]
Refactored code related to JoinTarget
Petr Onderka [Mon, 25 Jun 2012 16:42:44 +0000 (18:42 +0200)]
Fixed infinite recursion in BatchBlock.TryReceive
Miguel de Icaza [Fri, 17 Aug 2012 18:37:18 +0000 (11:37 -0700)]
Merge pull request #428 from paszczi/master
Fix ArgumentOutOfRangeException in HttpListenerManager.TryDequeueRequest when timeout is less than 0
Zoltan Varga [Thu, 16 Aug 2012 20:10:40 +0000 (22:10 +0200)]
Avoid a crash in SET_KEEPALIVE if the socket transport is not initialized.
Jonathan Pryor [Thu, 16 Aug 2012 19:10:38 +0000 (15:10 -0400)]
Fix g_strsplit() when delimiter at end-of-string and at max_count.
Suppose you want to split a `name=value` string:
char** kvp = g_strsplit ("name=value", "=", 2);
// kvp[0] is "name", kvp[1] is "value"
That works, but what if the string is "malformed" and missses a value?
char** kvp = g_strsplit ("name=", "=", 2);
// kvp[0] is "name", kvp[1] is "="
A value of "=" makes no sense here: values returned from
g_strsplit() shouldn't contain delimeter unless max_count is specified
and it's _within_ the last string; it's also not what GLib does.
What makes sense is a value of "" (the empty string), which IS what
GLib does (so it's compatible and sensible).
Fix g_strsplit() to use the empty string when the "rest" value would
otherwise be the delimiter.
Alan McGovern [Thu, 16 Aug 2012 14:23:17 +0000 (15:23 +0100)]
[System.Xml.Linq] Add error checking to the XElement constructors
Added matching tests.
Marek Safar [Thu, 16 Aug 2012 10:49:13 +0000 (12:49 +0200)]
Searching for an attributes in probing mode should not report errors for other attributes. Fixes #6529
Marek Safar [Thu, 16 Aug 2012 08:28:11 +0000 (09:28 +0100)]
Fix best params candidate rules for overloads with non-default arguments. Fixes #6541
Marek Safar [Thu, 16 Aug 2012 07:09:16 +0000 (08:09 +0100)]
Inline AM_COND_IF for configure to work with ancient aclocal
Zoltan Varga [Thu, 16 Aug 2012 00:47:15 +0000 (02:47 +0200)]
Free the newly added assembly->remapped_tokens hashtable.
Zoltan Varga [Thu, 16 Aug 2012 00:45:15 +0000 (02:45 +0200)]
Free the newly added assembly->remapped_tokens hashtable.
Zoltan Varga [Thu, 16 Aug 2012 00:04:02 +0000 (02:04 +0200)]
Handle ConstructorBuilders in fixup_cattrs () correctly. Fixes #689533 (nemerle build).
Marek Safar [Wed, 15 Aug 2012 12:41:52 +0000 (05:41 -0700)]
Merge pull request #430 from Nican/master
Infinite recursion with GetCurrentDirectory and security enabled
Nican [Wed, 15 Aug 2012 05:35:03 +0000 (01:35 -0400)]
Fixed incorrect line spacing
Nican [Wed, 15 Aug 2012 05:31:09 +0000 (01:31 -0400)]
When enabling security with "mono_security_enable_core_clr" on a Windows machine, it causes an infinite recession when calling System.IO.Directory.GetCurrentDirectory.
The loop is happening between these calls:
https://github.com/mono/mono/blob/
92d8961e0b244429d4d82176f4b33c8a4b3b064c/mcs/class/corlib/System.IO/Path.cs#L298
https://github.com/mono/mono/blob/
3c39ac4586b4470703fb4af0208b5baf1de70e43/mcs/class/corlib/System.Security.Permissions/FileIOPermission.cs#L157
https://github.com/mono/mono/blob/
9322e0d16b0edc054947279af34d3c7afb286c89/mcs/class/corlib/System.IO/Directory.cs#L248
Stack trace as follows:
The requested operation caused a stack overflow. at (wrapper managed-to-native) System.IO.MonoIO:GetCurrentDirectory (System.IO.MonoIOError&)
at System.IO.Directory.GetCurrentDirectory () [0x00000] in <filename unknown>:0
at System.IO.Path.WindowsDriveAdjustment (System.String path) [0x00000] in <filename unknown>:0
at System.IO.Path.InsecureGetFullPath (System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission.AddPathInternal (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission.AddPathList (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission..ctor (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.IO.Directory.GetCurrentDirectory () [0x00000] in <filename unknown>:0
at System.IO.Path.WindowsDriveAdjustment (System.String path) [0x00000] in <filename unknown>:0
at System.IO.Path.InsecureGetFullPath (System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission.AddPathInternal (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission.AddPathList (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.Security.Permissions.FileIOPermission..ctor (FileIOPermissionAccess access, System.String path) [0x00000] in <filename unknown>:0
at System.IO.Directory.GetCurrentDirectory () [0x00000] in <filename unknown>:0
at System.IO.Path.WindowsDriveAdjustment (System.String path) [0x00000] in <filename unknown>:0
at System.IO.Path.InsecureGetFullPath (System.String path) [0x00000] in <filename unknown>:0
...Snip...
Zoltan Varga [Wed, 15 Aug 2012 04:47:28 +0000 (06:47 +0200)]
Emit AOT line number information on osx/ios too.