Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[SR-7849] _DataStorage's get(_:) method should use load(fromByteOffset:as:) #3688

Open
hamishknight opened this issue Jun 2, 2018 · 1 comment

Comments

@hamishknight
Copy link

Previous ID SR-7849
Radar None
Original Reporter @hamishknight
Type Bug
Additional Detail from JIRA
Votes 0
Component/s Foundation
Labels Bug
Assignee None
Priority Medium

md5: 95afe395044a05b79f001ba200709f2b

relates to:

  • SR-7726 Data.withUnsafe(Mutable)Bytes should use bindMemory(to:) instead of assumingMemoryBound(to:)
  • SR-7850 DataStorage's set(:) method should use storeBytes(of:toByteOffset:as:)

Issue Description:

Currently _DataStorage's get(_:) method uses assumingMemoryBound(to:), which can invoke undefined behaviour if the underlying memory is bound to a type unrelated to UInt8.

We should use load(fromByteOffset:as:) instead.

For more context, see https://forums.swift.org/t/how-to-use-data-withunsafebytes-in-a-well-defined-manner/12811.

@atrick
Copy link
Member

atrick commented Jun 5, 2018

@phausler Here are some very specific bugs for issues in the implementation of Foundation.Data.

@swift-ci swift-ci transferred this issue from apple/swift-issues Apr 25, 2022
@shahmishal shahmishal transferred this issue from apple/swift May 5, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants