Skip to content

Bug: Overflow of read/writeptr #140

Open

Description

@ThoreMehr

I think behaviour depends on the platform. At least on mine when usize overflows it wraps. As len() is defined with the difference of those pointers if one wraps and the other not the difference will be large and wrong.
I think to solve that one would have to track length independently or do something smart with those pointers in case of warping.

Activity

  1. jdonszelmann commented on Jan 25, 2025

    @jdonszelmann
    Collaborator

    The behavior doesn't depend on the platform, we use non-wrapping integers so on overflow we panic in debug mode and technically UB in release mode. On 64 bit platforms, overflows are unlikely to ever happen but you're not wrong that since on 32 bit platforms usize becomes 32 bit, overflows are imaginable. @NULLx76 we could change to u64, or at a very low periodicity scale the pointers down to keep them in range over time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions