only call qsort with more than one element

This commit is contained in:
Charlton, Scott R 2021-03-19 17:32:10 -06:00
parent b6a0f193c9
commit f686374e5e
6 changed files with 16 additions and 16 deletions

View File

@ -2636,7 +2636,7 @@ edl_species(const char *surf_name, LDBLE * count, char ***names, LDBLE ** moles,
/*
* Sort system species
*/
if (sys.size() > 0)
if (sys.size() > 1)
{
qsort(&sys[0], sys.size(),
sizeof(struct system_species), system_species_compare);
@ -2727,12 +2727,12 @@ system_total(const char *total_name, LDBLE * count, char ***names,
/*
* Sort system species
*/
if (sys.size() > 0 && isort == 0)
if (sys.size() > 1 && isort == 0)
{
qsort(&sys[0], sys.size(),
sizeof(struct system_species), system_species_compare);
}
else if (sys.size() > 0)
else if (sys.size() > 1)
{
qsort(&sys[0], sys.size(),
(size_t)sizeof(struct system_species), system_species_compare_name);

View File

@ -1352,7 +1352,7 @@ build_model(void)
/*
* Sort species list, by master only
*/
qsort(&species_list[0], (int)species_list.size(),
if (species_list.size() > 1) qsort(&species_list[0], species_list.size(),
sizeof(struct species_list), species_list_compare_master);
/*
* Save model description

View File

@ -3641,7 +3641,7 @@ print_alkalinity(void)
(double) (total_alkalinity / mass_water_aq_x)));
output_msg(sformatf("\t%-15s%12s%12s%10s\n\n", "Species",
"Alkalinity", "Molality", "Alk/Mol"));
qsort(&alk_list[0], (size_t) count_alk_list,
if (count_alk_list > 1) qsort(&alk_list[0], (size_t) count_alk_list,
(size_t) sizeof(struct species_list), species_list_compare_alk);
for (i = 0; i < count_alk_list; i++)
{

View File

@ -1661,14 +1661,14 @@ read_inverse(void)
/*
* Sort isotopes
*/
if (inverse[n].count_isotopes > 0)
if (inverse[n].count_isotopes > 1)
{
qsort(inverse[n].isotopes,
(size_t) inverse[n].count_isotopes,
sizeof(struct inv_isotope), inverse_isotope_compare);
}
if (inverse[n].count_i_u > 0)
if (inverse[n].count_i_u > 1)
{
qsort(inverse[n].i_u,
(size_t) inverse[n].count_i_u,

View File

@ -848,7 +848,7 @@ inverse_sort(void)
/*
* Sort array of inverse structures
*/
if (count_inverse > 0)
if (count_inverse > 1)
{
qsort(&inverse[0], (size_t) count_inverse,
sizeof(struct inverse), inverse_compare);
@ -2163,7 +2163,7 @@ save_values_sort(void)
/*
* Sort array of save_values structures
*/
if (save_values.size() > 0)
if (save_values.size() > 1)
{
qsort(&save_values[0], save_values.size(),
sizeof(struct save_values), save_values_compare);
@ -2207,7 +2207,7 @@ save_values_store(struct save_values *s_v)
save_values_sort();
}
if (save_values.size() > 0)
if (save_values.size() > 1)
{
qsort(&save_values[0], save_values.size(),
sizeof(struct save_values), save_values_compare);
@ -2409,7 +2409,7 @@ species_list_sort(void)
/*
* Sort list using rules in species_list_compare
*/
if (species_list.size() > 0)
if (species_list.size() > 1)
{
qsort(&species_list[0], species_list.size(),
sizeof(struct species_list), species_list_compare);
@ -2909,7 +2909,7 @@ trxn_sort(void)
/*
* Compare names in tokens in trxn array for sorting
*/
if (count_trxn - 1 > 0)
if (count_trxn - 1 > 1)
{
qsort(&trxn.token[1],
(size_t) count_trxn - 1,

View File

@ -150,14 +150,14 @@ tidy_model(void)
/* species */
if (new_model == TRUE)
{
qsort(&s[0], s.size(), sizeof(struct species *), s_compare);
if (s.size() > 1) qsort(&s[0], s.size(), sizeof(struct species *), s_compare);
/* master species */
qsort(&master[0], master.size(), sizeof(struct master *), master_compare);
if (master.size() > 1) qsort(&master[0], master.size(), sizeof(struct master *), master_compare);
/* elements */
qsort(&elements[0], elements.size(), sizeof(struct element *), element_compare);
if (elements.size() > 1) qsort(&elements[0], elements.size(), sizeof(struct element *), element_compare);
/* phases */
qsort(&phases[0], phases.size(), sizeof(struct phase *), phase_compare);
if (phases.size() > 1) qsort(&phases[0], phases.size(), sizeof(struct phase *), phase_compare);
}