while doing some offline code analysis, these two classes in the 
System.Security.Principal namespace appear to have infinite recursion in their 
op_Equality methods:

C#:
----
  public static bool operator == (SecurityIdentifier left, SecurityIdentifier 
right)
  {
   if (left == null)
    return (right == null);
   if (right == null)
    return false;
   return (left.Value == right.Value);
  }
----
IL:
----
  IL_0000:  ldarg.0
  IL_0001:  ldnull
  IL_0002:  call       bool 
System.Security.Principal.SecurityIdentifier::op_Equality(class 
System.Security.Principal.SecurityIdentifier,
                                                                                
      class System.Security.Principal.SecurityIdentifier)
  IL_0007:  brfalse.s  IL_0011
  IL_0009:  ldarg.1
  IL_000a:  ldnull
  IL_000b:  call       bool 
System.Security.Principal.SecurityIdentifier::op_Equality(class 
System.Security.Principal.SecurityIdentifier,
                                                                                
      class System.Security.Principal.SecurityIdentifier)
  IL_0010:  ret
  IL_0011:  ldarg.1
  IL_0012:  ldnull
  IL_0013:  call       bool 
System.Security.Principal.SecurityIdentifier::op_Equality(class 
System.Security.Principal.SecurityIdentifier,
                                                                                
      class System.Security.Principal.SecurityIdentifier)
  IL_0018:  brfalse.s  IL_001c
  IL_001a:  ldc.i4.0
  IL_001b:  ret
  IL_001c:  ldarg.0
  IL_001d:  callvirt   instance string 
System.Security.Principal.IdentityReference::get_Value()
  IL_0022:  ldarg.1
  IL_0023:  callvirt   instance string 
System.Security.Principal.IdentityReference::get_Value()
  IL_0028:  call       bool System.String::op_Equality(string,
                                                       string)
  IL_002d:  ret
----

i don't think i use those two functions, but just curious if others have seen 
this.  am i missing something?  :)

thx,
bruce
_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to