diff options
author | Mark Menzynski <[email protected]> | 2019-12-10 11:28:11 +0100 |
---|---|---|
committer | mmenzyns <[email protected]> | 2020-03-20 17:25:25 +0000 |
commit | 24e82e453370e4105d73fcdf14cfb2f8922ddb9a (patch) | |
tree | 895e90877451b8073265ee2727dfa239c0fad8fa /src/util | |
parent | 1b49534df2197c59880ee703ff4dd813bc5f5231 (diff) |
util/blob: Add overwrite function for uint8
Overwrite function for this type was missing and I needed it for my project.
Reviewed-by: Marek Olšák <[email protected]>
Reviewed-by: Karol Herbst <[email protected]>
Signed-off-by: Mark Menzynski <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3903>
Diffstat (limited to 'src/util')
-rw-r--r-- | src/util/blob.c | 9 | ||||
-rw-r--r-- | src/util/blob.h | 15 |
2 files changed, 24 insertions, 0 deletions
diff --git a/src/util/blob.c b/src/util/blob.c index e4000334e0a..f830eb48076 100644 --- a/src/util/blob.c +++ b/src/util/blob.c @@ -215,6 +215,15 @@ BLOB_WRITE_TYPE(blob_write_intptr, intptr_t) assert(ALIGN((_offset), (_align)) == (_offset)) bool +blob_overwrite_uint8 (struct blob *blob, + size_t offset, + uint8_t value) +{ + ASSERT_ALIGNED(offset, sizeof(value)); + return blob_overwrite_bytes(blob, offset, &value, sizeof(value)); +} + +bool blob_overwrite_uint32 (struct blob *blob, size_t offset, uint32_t value) diff --git a/src/util/blob.h b/src/util/blob.h index 9113331254a..e1e156eb43f 100644 --- a/src/util/blob.h +++ b/src/util/blob.h @@ -184,6 +184,21 @@ bool blob_write_uint8(struct blob *blob, uint8_t value); /** + * Overwrite a uint8_t previously written to the blob. + * + * Writes a uint8_t value to an existing portion of the blob at an offset of + * \offset. This data range must have previously been written to the blob by + * one of the blob_write_* calls. + * + * \return True unless the requested position or position+to_write lie outside + * the current blob's size. + */ +bool +blob_overwrite_uint8(struct blob *blob, + size_t offset, + uint8_t value); + +/** * Add a uint16_t to a blob. * * \note This function will only write to a uint16_t-aligned offset from the |