|
|
@ -1389,8 +1389,7 @@ bool MessageDifferencer::MatchRepeatedFieldIndices( |
|
|
|
// doesn't necessarily imply Compare(b, c). Therefore a naive greedy
|
|
|
|
// doesn't necessarily imply Compare(b, c). Therefore a naive greedy
|
|
|
|
// algorithm will fail to find a maximum matching.
|
|
|
|
// algorithm will fail to find a maximum matching.
|
|
|
|
// Here we use the argumenting path algorithm.
|
|
|
|
// Here we use the argumenting path algorithm.
|
|
|
|
MaximumMatcher::NodeMatchCallback* callback = |
|
|
|
MaximumMatcher::NodeMatchCallback* callback = NewPermanentCallback( |
|
|
|
::google::protobuf::internal::NewPermanentCallback( |
|
|
|
|
|
|
|
this, &MessageDifferencer::IsMatch, |
|
|
|
this, &MessageDifferencer::IsMatch, |
|
|
|
repeated_field, key_comparator, |
|
|
|
repeated_field, key_comparator, |
|
|
|
&message1, &message2, parent_fields); |
|
|
|
&message1, &message2, parent_fields); |
|
|
|