Activity overview
Latest activity by DJ Doena
                    
                      
                        10.3 crashes when reflecting embedded methods
                        
                        
                        
                        
                      
                      
                      
                
                  Trying to reflect the Main method crashes Reflector 10.3 without comment
internal static class NinetyNineBottlesOfBeer
{
    private static void Main()
    {
        foreach (var line in GetSongTe...
                      
                    
                  
                    
                      
                        @Russell D I was able to repro and record the version issue described above: [image] https://youtu.be/BVTjEZLtyTE    / comments
                        
                        
                        
                      
                      
                      
                
                  @Russell D I was able to repro and record the version issue described above: https://youtu.be/BVTjEZLtyTE
                      
                    
                  
                    
                      
                        I can also still repro this issue: https://forum.red-gate.com/discussion/comment/149760/#Comment_149760   
Invalid expression stack size during null coalescing expression translation. 
System.InvalidOperationException 
at Reflector.Disassembler.Translator.DecodeNullCoalescingExpressionOrStatement() 
at Reflector.Disassembler.Translator.DecodeDuplicateStatement(Int32 offset, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB, Boolean handleExpressionStack) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB) 
at Reflector.Disassembler.Disassembler.TransformMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.Translator.TranslateMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.UserInterface.DisassemblerWindow.Render(Boolean expandTypes, Boolean expandMethods) / comments
                        
                        
                        
                      
                      
                      
                
                  I can also still repro this issue: https://forum.red-gate.com/discussion/comment/149760/#Comment_149760
Invalid expression stack size during null coalescing expression translation.
System.InvalidOp...
                      
                    
                  
                    
                      
                        I retested the issue from here https://forum.red-gate.com/discussion/comment/150547/#Comment_150547  
with 10.0.4.406  
same result:  
Block statement count of zero during condition expression translation. 
Reflector.Disassembler.Translator+ExpressionHandlingException 
at Reflector.Disassembler.Translator.DecodeConditionExpression(Int32 offset, Boolean& failureCase, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.DecodeNullCoalescingExpressionOrStatement() 
at Reflector.Disassembler.Translator.DecodeDuplicateStatement(Int32 offset, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end, IEnumerable`1& AdditionalExpressions) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB, Boolean handleExpressionStack) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB) 
at Reflector.Disassembler.Disassembler.TransformMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.Translator.TranslateMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.UserInterface.DisassemblerWindow.Render(Boolean expandTypes, Boolean expandMethods) / comments
                        
                        
                        
                      
                      
                      
                
                  I retested the issue from here https://forum.red-gate.com/discussion/comment/150547/#Comment_150547
with 10.0.4.406
same result:
Block statement count of zero during condition expression translatio...
                      
                    
                  
                    
                      
                        Found another one. Actual code of method is:  
void RaiseEvent(string attribute) 
{ 
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(attribute)); 
}  
Error is:  
Block statement count of zero during condition expression translation. 
Reflector.Disassembler.Translator+ExpressionHandlingException 
at Reflector.Disassembler.Translator.DecodeConditionExpression(Int32 offset, Boolean& failureCase) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.DecodeNullCoalescingExpressionOrStatement() 
at Reflector.Disassembler.Translator.DecodeDuplicateStatement(Int32 offset) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB, Boolean handleExpressionStack) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB) 
at Reflector.Disassembler.Disassembler.TransformMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.Translator.TranslateMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.UserInterface.DisassemblerWindow.Render(Boolean expandTypes, Boolean expandMethods)  
Code can be found here: http://doena-soft.de/tmp/SubControls.zip in SubControls.MainWindowViewModel.RaiseEvent(string attribute) / comments
                        
                        
                        
                      
                      
                      
                
                  Found another one. Actual code of method is:
void RaiseEvent(string attribute)
{
PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(attribute));
}
Error is:
Block statement count of zero du...
                      
                    
                  
                    
                      
                        I have another one  
Invalid expression stack size during null coalescing expression translation. 
System.InvalidOperationException 
at Reflector.Disassembler.Translator.DecodeNullCoalescingExpressionOrStatement() 
at Reflector.Disassembler.Translator.DecodeDuplicateStatement(Int32 offset) 
at Reflector.Disassembler.Translator.DecodeStatement(Int32 end) 
at Reflector.Disassembler.Translator.DecodeBlockStatement(Int32 offset, Int32 end) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB, Boolean handleExpressionStack) 
at Reflector.Disassembler.Translator.TranslateMethodDeclaration(IMethodDeclaration mD, IMethodBody mB) 
at Reflector.Disassembler.Disassembler.TransformMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.Translator.TranslateMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.UserInterface.DisassemblerWindow.Render(Boolean expandTypes, Boolean expandMethods)  
The actual code of that method is  
DoenaSoft.TVJunkie.MainForm  
bool UserIsCorrectAndContainsDate(User user) => user?.UserName == "DJ Doena" && user?.Watches?.Any(WatchesContainsDate) == true;  
PS: this throws the same error 
bool EntryContainsUserWithWatchedDate(FileEntry entry) => entry?.Users?.Any(UserIsCorrectAndContainsDate) == true;  / comments
                        
                        
                        
                      
                      
                      
                
                  I have another one
Invalid expression stack size during null coalescing expression translation.
System.InvalidOperationException
at Reflector.Disassembler.Translator.DecodeNullCoalescingExpressionO...
                      
                    
                  
                    
                      
                        Hi, (un)fortunately no more repro. I've cleared my entire assembly list on the left and then only loaded my new assembly. Now the error is gone. It could have been an assembly that was in the list but didn't exist on the harddrive anymore? Not sure because there were about a dozen assemblies in the list, sorry. / comments
                        
                        
                        
                      
                      
                      
                
                  Hi, (un)fortunately no more repro. I've cleared my entire assembly list on the left and then only loaded my new assembly. Now the error is gone. It could have been an assembly that was in the list ...
                      
                    
                  
                    
                      
                        I've tried out the new named tuple feature in C#7 and when I reflect on it, I get the following error:  
version 
System.ComponentModel.InvalidEnumArgumentException 
at Reflector.Disassembler.Helper.HiddenAttributesCollection.ParseVersion(String version) 
at Reflector.Disassembler.Helper.HiddenAttributesCollection.<>c.<CreateInstance>b__0_1(Dictionary`2 dict, ICustomAttributeCollection attributes, String version) 
at Reflector.Disassembler.Helper.HiddenAttributesCollection.HelpC`2.Filter(ICustomAttributeCollection attributes, String version) 
at Reflector.Disassembler.Helper.FilterIrrelevant(ICustomAttributeCollection attributes, String version) 
at Reflector.Application.Languages.CSharpLanguage.LanguageWriter.WriteCustomAttributeList(ICustomAttributeProvider value, IFormatter formatter, String target, HashSet`1 hide) 
at Reflector.Application.Languages.CSharpLanguage.LanguageWriter.WriteMethodDeclaration(IMethodDeclaration value) 
at Reflector.Application.UserInterface.DisassemblerWindow.Render(Boolean expandTypes, Boolean expandMethods) / comments
                        
                        
                        
                      
                      
                      
                
                  I've tried out the new named tuple feature in C#7 and when I reflect on it, I get the following error:
version
System.ComponentModel.InvalidEnumArgumentException
at Reflector.Disassembler.Helper.Hi...
                      
                    
                  
                    
                      
                        Reset/clear assembly list
                        
                        
                        
                        
                      
                      
                      
                
                  Hi,
is there a quick and easy way to completely empty the assembly list.
I sometimes have dozens of assemblies in it and to remove them one by one is rather tiresome.
                      
                    
                  
                    
                      
                        Reflecter 6.7.0.3 won't upgrade on 6.8 :-(
                        
                        
                        
                        
                      
                      
                      
                
              When I open my version 6.7.03 and select "check for updates" then it downloads an update but can't install it afterwards because "...\Reflector.exe is in use by another process.
And I don't see an ...
                      
                    
                  