The following commit has been merged in the master branch:
commit d76df7cb24a7d5c12dcbe2a60cf34d1a6f158c76
Author: Marcio Barbosa <[email protected]>
Date:   Thu Nov 21 06:05:12 2024 -0800

    DARWIN: Use NSUInteger for indexGreaterThanIndex return value
    
    The indexGreaterThanIndex function returns the closest index from the
    index set that is greater than a specified index. This function is
    typically used in a loop to iterate through a list of items until it
    returns NSNotFound, indicating the end of the list.
    
    In AFSCommanderPref.m, the following pattern is being used:
    
    int index = 0;
    do {
        ...
    } while((index = [... indexGreaterThanIndex:index]) != NSNotFound);
    
    The issue arises because indexGreaterThanIndex returns an NSUInteger,
    while the loop uses an int for index. If NSNotFound is cast to an int,
    it becomes -1, causing the loop to never terminate and leading to a
    crash.
    
    To fix this problem, change the type of index from int to NSUInteger to
    ensure proper comparison and termination of the loop when NSNotFound is
    returned.
    
    Change-Id: I0b8b38d201b500c2d6d7778f0132ce17f7c04ac8
    Reviewed-on: https://gerrit.openafs.org/15961
    Reviewed-by: Michael Meffie <[email protected]>
    Reviewed-by: Cheyenne Wills <[email protected]>
    Reviewed-by: Mark Vitale <[email protected]>
    Tested-by: BuildBot <[email protected]>
    Reviewed-by: Andrew Deason <[email protected]>

 src/platform/DARWIN/AFSPreference/AFSCommanderPref.m | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

-- 
OpenAFS Master Repository
_______________________________________________
OpenAFS-cvs mailing list
[email protected]
https://lists.openafs.org/mailman/listinfo/openafs-cvs

Reply via email to