svn commit: r349813 - stable/12/sys/cam/scsi
Alexander Motin
mav at FreeBSD.org
Sun Jul 7 18:29:11 UTC 2019
Author: mav
Date: Sun Jul 7 18:29:10 2019
New Revision: 349813
URL: https://svnweb.freebsd.org/changeset/base/349813
Log:
MFC r349281: Fix individual_element_index when some type has 0 elements.
When some type has 0 elements, saved_individual_element_index was set
to -1 on second type bump, since individual_element_index was not
restored after the first. To me it looks easier just to increment
saved_individual_element_index separately than think when to save it.
Modified:
stable/12/sys/cam/scsi/scsi_enc_ses.c
Directory Properties:
stable/12/ (props changed)
Modified: stable/12/sys/cam/scsi/scsi_enc_ses.c
==============================================================================
--- stable/12/sys/cam/scsi/scsi_enc_ses.c Sun Jul 7 17:45:17 2019 (r349812)
+++ stable/12/sys/cam/scsi/scsi_enc_ses.c Sun Jul 7 18:29:10 2019 (r349813)
@@ -444,6 +444,7 @@ ses_iter_next(struct ses_iterator *iter)
iter->type_element_index = ITERATOR_INDEX_END;
iter->global_element_index = ITERATOR_INDEX_END;
iter->individual_element_index = ITERATOR_INDEX_END;
+ iter->saved_individual_element_index = ITERATOR_INDEX_END;
return (NULL);
}
@@ -468,17 +469,12 @@ ses_iter_next(struct ses_iterator *iter)
*/
iter->type_index++;
iter->type_element_index = 0;
- iter->saved_individual_element_index
- = iter->individual_element_index;
iter->individual_element_index = ITERATOR_INDEX_INVALID;
}
if (iter->type_element_index > 0) {
- if (iter->type_element_index == 1) {
- iter->individual_element_index
- = iter->saved_individual_element_index;
- }
- iter->individual_element_index++;
+ iter->individual_element_index =
+ ++iter->saved_individual_element_index;
}
return (&iter->cache->elm_map[iter->global_element_index]);
More information about the svn-src-all
mailing list