anchor.diff:          AMediaType := TMediaType.Create(LCandidateMediaType);
         end;
     finally
  -    LMethodConsumesMediaTypes.Free;
  +    LConsumesMediaTypes.Free;
     end;
   end;
   
  
positive.code:   LReaderRttiType: TRttiType;
  
    LReaderMediaTypes: TMediaTypeList;
    LMethodConsumesMediaTypes: TMediaTypeList;
    LAllowedMediaTypes: TArray<string>;
    LMediaTypes: TArray<string>;
    LMediaType: string;
    LCandidateMediaType: string;
  //  LCandidateQualityFactor: Double;
  begin
    Assert(Assigned(ADestination));
    LMethod := ADestination.Parent as TRttiMethod;
    Assert(Assigned(LMethod));
  
    AMediaType := nil;
    AReader := nil;
    LFound := False;
    LCandidateAffinity := -1;
    LCandidateMediaType := '';
  //  LCandidateQualityFactor := -1;
  
    // consider method's Consumes
    LMethodConsumesMediaTypes := GetConsumesMediaTypes(LMethod);
    try
      if LMethodConsumesMediaTypes.Count > 0 then
        LAllowedMediaTypes := LMethodConsumesMediaTypes.ToArrayOfString
      else
  {$ifdef DelphiXE7_UP}
        LAllowedMediaTypes := [];
  
negative.code:       or ((Length(LAllowedMediaTypes) = 1) and (LAllowedMediaTypes[0] = TMediaType.WILDCARD))
      then // defaults
      begin
        if LConsumesMediaTypes.Count > 0 then
          LAllowedMediaTypes := LConsumesMediaTypes.ToArrayOfString
        else
        begin
          SetLength(LAllowedMediaTypes, 2);
  