if (!s1) { if (!s2) return 0; else return -1; } else if (!s2) { return 1; } else { return nsCRT::strcmp(s1, s2); }
return nsCRT::strcmp(s1.get(), s2.get());
AutoCompleteSortComparison(const void *v1, const void *v2, void *unused) {  nsIAutoCompleteItem *item1 = *(nsIAutoCompleteItem**) v1;  nsIAutoCompleteItem *item2 = *(nsIAutoCompleteItem**) v2;    nsXPIDLString s1;  item1->GetValue(getter_Copies(s1));  nsXPIDLString s2;  item2->GetValue(getter_Copies(s2));    if (!s1) {    if (!s2)      return 0;    else      return -1;  } else if (!s2) {    return 1;  } else {    return nsCRT::strcmp(s1, s2);  }}