Notice (2018-05-24): bugzilla.xamarin.com is now in
Please join us on
Visual Studio Developer Community and in the
Mono organizations on
GitHub to continue tracking issues. Bugzilla will remain
available for reference in read-only mode. We will continue to work
on open Bugzilla bugs, copy them to the new locations
as needed for follow-up, and add the new items under Related
Our sincere thanks to everyone who has contributed on this bug
tracker over the years. Thanks also for your understanding as we
make these adjustments and improvements for the future.
Please create a new report on
Developer Community or GitHub with
your current version information, steps to reproduce, and relevant error
messages or log files if you are hitting an issue that looks similar to
this resolved bug and you do not yet see a matching new report.
Xamarin Studio version: 4.1.9 (build 6)
OS: Windows 8.1 Professional Preview (64-bit)
Steps to reproduce: Build/re-build a project and a System.OutOfMemoryException is thrown (sometimes it happens the first time, other times it takes several builds to reproduce the bug) - sometimes Xamarin Studio just hard crashes and attaching a debugger shows an AccessViolationException happening at System.String.MakeSeperatorList which is being called by System.String.SplitInternal.
At the time being, I have only managed to reproduce the bug on Windows 8.1.
System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
at System.String.SplitInternal(Char separator, Int32 count, StringSplitOptions options)
at System.String.Split(Char separator)
at MonoDevelop.Ide.ImageService.GetStockIdForImageSpec(RuntimeAddin addin, String filename, IconSize size)
at MonoDevelop.Ide.ImageService.GetStockIdForImageSpec(String filename, IconSize size)
at MonoDevelop.Ide.ImageService.IsAnimation(String iconId, IconSize size)
at MonoDevelop.Components.MainToolbar.StatusArea.LoadPixbuf(IconId image)
at MonoDevelop.Components.MainToolbar.StatusArea.ShowMessageInner(IconId image, String message, Boolean isMarkup)
After looking at stack traces, it seems that sometimes a really really really huge string (with a length of 286.804.248, sometimes more, sometimes less) is passed to the String.Split method for some unknown reason.
At the time of the crash, Xamarin Studio is using around 1.2 GB of RAM.
I can repro this.
This is EXTREMELY strange. We have a string that appears to be holding a SpecializedStringCollection object. Maybe something is smashing the stack.
Actually, it looks like it may be a bug in .NET Remoting. The bad value comes from StatusProgressMonitor, which is a transparent proxy on a MarshalByRefObject.
Committed a workaround in https://github.com/mono/monodevelop/commit/7d8866a0f28044b3038ce397c779b97872084aef
*** Bug 14860 has been marked as a duplicate of this bug. ***
*** Bug 15043 has been marked as a duplicate of this bug. ***
I have checked this issue with latest master build XamarinStudio-188.8.131.524_f6483f8a1c6d0790f2d8033a7e4d55e09b57a8bd and observed this issue has been fixed.
Hence closing this issue