improve const-correctness of pipeline encode/decode functions

This commit is contained in:
2025-02-24 15:52:13 +00:00
parent fdbddd5800
commit a2a941440a
2 changed files with 11 additions and 5 deletions

View File

@@ -119,15 +119,21 @@ void ec3_pipeline_destroy(struct ec3_pipeline *p)
enum ec3_status ec3_pipeline_encode_cluster( enum ec3_status ec3_pipeline_encode_cluster(
struct ec3_pipeline *pipeline, struct ec3_pipeline *pipeline,
void *in, const void *in,
size_t in_len, size_t in_len,
void *out, void *out,
size_t out_max, size_t out_max,
size_t *out_len) size_t *out_len)
{ {
if (in_len > out_max || out_max < pipeline->p_cluster_size) {
return EC3_ERR_INVALID_VALUE;
}
b_queue_entry *cur = b_queue_first(&pipeline->p_stages); b_queue_entry *cur = b_queue_first(&pipeline->p_stages);
enum ec3_status status = EC3_SUCCESS; enum ec3_status status = EC3_SUCCESS;
void *src = in; memcpy(out, in, in_len);
void *src = out;
size_t stage_in_size = in_len; size_t stage_in_size = in_len;
size_t stage_out_size = 0; size_t stage_out_size = 0;
@@ -170,7 +176,7 @@ enum ec3_status ec3_pipeline_encode_cluster(
enum ec3_status ec3_pipeline_decode_cluster( enum ec3_status ec3_pipeline_decode_cluster(
struct ec3_pipeline *pipeline, struct ec3_pipeline *pipeline,
void *in, const void *in,
size_t in_len, size_t in_len,
void *out, void *out,
size_t out_max, size_t out_max,

View File

@@ -66,14 +66,14 @@ extern void ec3_pipeline_destroy(struct ec3_pipeline *p);
extern enum ec3_status ec3_pipeline_encode_cluster( extern enum ec3_status ec3_pipeline_encode_cluster(
struct ec3_pipeline *pipeline, struct ec3_pipeline *pipeline,
void *in, const void *in,
size_t in_len, size_t in_len,
void *out, void *out,
size_t out_max, size_t out_max,
size_t *out_len); size_t *out_len);
extern enum ec3_status ec3_pipeline_decode_cluster( extern enum ec3_status ec3_pipeline_decode_cluster(
struct ec3_pipeline *pipeline, struct ec3_pipeline *pipeline,
void *in, const void *in,
size_t in_len, size_t in_len,
void *out, void *out,
size_t out_max, size_t out_max,