summaryrefslogtreecommitdiff
path: root/libguile/array-handle.c
diff options
context:
space:
mode:
Diffstat (limited to 'libguile/array-handle.c')
-rw-r--r--libguile/array-handle.c14
1 files changed, 2 insertions, 12 deletions
diff --git a/libguile/array-handle.c b/libguile/array-handle.c
index 84e9f88a1..2252ecc9a 100644
--- a/libguile/array-handle.c
+++ b/libguile/array-handle.c
@@ -231,21 +231,11 @@ scm_array_get_handle (SCM array, scm_t_array_handle *h)
}
break;
case scm_tc7_array:
+ scm_array_get_handle (SCM_I_ARRAY_V (array), h);
+ h->array = array;
h->base = SCM_I_ARRAY_BASE (array);
h->ndims = SCM_I_ARRAY_NDIM (array);
h->dims = SCM_I_ARRAY_DIMS (array);
- {
- scm_t_array_handle vh;
-
- scm_array_get_handle (SCM_I_ARRAY_V (array), &vh);
- h->element_type = vh.element_type;
- h->elements = vh.elements;
- h->writable_elements = vh.writable_elements;
- h->vector = vh.vector;
- h->vref = vh.vref;
- h->vset = vh.vset;
- scm_array_handle_release (&vh);
- }
break;
default:
scm_wrong_type_arg_msg (NULL, 0, array, "array");