int IComparer.Compare(object ol, object or) {
Cookie left = (Cookie) ol;
Cookie right = (Cookie) or;
int result;
if ((result = string.Compare(left.Name, right.Name, StringComparison.OrdinalIgnoreCase)) != 0) {
return result;
}
if ((result = string.Compare(left.Domain, right.Domain, StringComparison.OrdinalIgnoreCase)) != 0) {
return result;
}
//
//NB: The only path is case sensitive as per spec.
// However, on Win Platform that may break some lazy applications.
//
if ((result = string.Compare(left.Path, right.Path, StringComparison.Ordinal)) != 0) {
return result;
}
// They are equal here even if variants are still different.
return 0;
}
}