Skip to content
Snippets Groups Projects
Forked from Alchemy Viewer / Alchemy Viewer
Source project has a limited visibility.
  • Nat Goodspeed's avatar
    4349cb61
    DRTVWR-575: Address review comments on Xcode 14.1 type tweaks. · 4349cb61
    Nat Goodspeed authored
    Introduce LLSD template constructors and assignment operators to disambiguate
    construction or assignment from any integer type to Integer, likewise any
    floating point type to Real. Use new narrow() function to validate
    conversions.
    
    For LLSD method parameters converted from LLSD::Integer to size_t, where the
    method previously checked for a negative argument, make it now check for
    size_t converted from negative: in other words, more than S32_MAX. The risk of
    having a parameter forced from negative to unsigned exceeds the risk of a
    valid length or index over that max.
    
    In lltracerecording.cpp's PeriodicRecording, now that mCurPeriod and
    mNumRecordedPeriods are size_t instead of S32, defend against subtracting 1
    from 0.
    
    Use narrow() to validate newly-introduced narrowing conversions.
    
    Make llclamp() return the type of the raw input value, even if the types of
    the boundary values differ.
    
    std::ostream::tellp() no longer returns a value we can directly report as a
    number. Cast to U64.
    4349cb61
    History
    DRTVWR-575: Address review comments on Xcode 14.1 type tweaks.
    Nat Goodspeed authored
    Introduce LLSD template constructors and assignment operators to disambiguate
    construction or assignment from any integer type to Integer, likewise any
    floating point type to Real. Use new narrow() function to validate
    conversions.
    
    For LLSD method parameters converted from LLSD::Integer to size_t, where the
    method previously checked for a negative argument, make it now check for
    size_t converted from negative: in other words, more than S32_MAX. The risk of
    having a parameter forced from negative to unsigned exceeds the risk of a
    valid length or index over that max.
    
    In lltracerecording.cpp's PeriodicRecording, now that mCurPeriod and
    mNumRecordedPeriods are size_t instead of S32, defend against subtracting 1
    from 0.
    
    Use narrow() to validate newly-introduced narrowing conversions.
    
    Make llclamp() return the type of the raw input value, even if the types of
    the boundary values differ.
    
    std::ostream::tellp() no longer returns a value we can directly report as a
    number. Cast to U64.
Code owners
Assign users and groups as approvers for specific file changes. Learn more.