C API: source argument to nix_copy_value should be const

This commit is contained in:
José Luis Lafuente 2024-04-21 22:15:12 +02:00
parent 8d70db3251
commit 6acf02b32a
No known key found for this signature in database
GPG key ID: 8A3455EBE455489A
3 changed files with 15 additions and 2 deletions

View file

@ -513,7 +513,7 @@ nix_err nix_init_primop(nix_c_context * context, Value * value, PrimOp * p)
NIXC_CATCH_ERRS NIXC_CATCH_ERRS
} }
nix_err nix_copy_value(nix_c_context * context, Value * value, Value * source) nix_err nix_copy_value(nix_c_context * context, Value * value, const Value * source)
{ {
if (context) if (context)
context->last_err_code = NIX_OK; context->last_err_code = NIX_OK;

View file

@ -422,7 +422,7 @@ nix_err nix_init_primop(nix_c_context * context, Value * value, PrimOp * op);
* @param[in] source value to copy from * @param[in] source value to copy from
* @return error code, NIX_OK on success. * @return error code, NIX_OK on success.
*/ */
nix_err nix_copy_value(nix_c_context * context, Value * value, Value * source); nix_err nix_copy_value(nix_c_context * context, Value * value, const Value * source);
/**@}*/ /**@}*/
/** @brief Create a bindings builder /** @brief Create a bindings builder

View file

@ -367,4 +367,17 @@ TEST_F(nix_api_expr_test, nix_value_init_apply_lazy_arg)
nix_gc_decref(ctx, e); nix_gc_decref(ctx, e);
} }
TEST_F(nix_api_expr_test, nix_copy_value)
{
Value * source = nix_alloc_value(ctx, state);
nix_init_int(ctx, source, 42);
nix_copy_value(ctx, value, source);
ASSERT_EQ(42, nix_get_int(ctx, value));
// Clean up
nix_gc_decref(ctx, source);
}
} }