diff --git a/python/obitools3/dms/column/typed_column/str.pyx b/python/obitools3/dms/column/typed_column/str.pyx index 89a183f..d39ceab 100644 --- a/python/obitools3/dms/column/typed_column/str.pyx +++ b/python/obitools3/dms/column/typed_column/str.pyx @@ -13,7 +13,7 @@ from ...capi.obiview cimport obi_get_str_with_elt_name_and_col_p_in_view, \ obi_set_str_with_elt_idx_and_col_p_in_view from ...capi.obierrno cimport obi_errno -from ...capi.obitypes cimport OBI_STR, OBIStr_NA +from ...capi.obitypes cimport OBI_STR, OBIStr_NA, const_char_p cdef class Column_str(Column): @@ -32,8 +32,8 @@ cdef class Column_str(Column): cpdef object get_line(self, index_t line_nb): - cdef char* value - cdef object result + cdef const_char_p value + cdef object result global obi_errno value = obi_get_str_with_elt_idx_and_col_p_in_view(self._view.pointer(), self.pointer(), line_nb, 0) if obi_errno > 0 : @@ -58,9 +58,9 @@ cdef class Column_str(Column): cdef class Column_multi_elts_str(Column_multi_elts): cpdef object get_item(self, index_t line_nb, object elt_id) : - cdef char* value - cdef object result - global obi_errno + cdef const_char_p value + cdef object result + global obi_errno if type(elt_id) == int : value = obi_get_str_with_elt_idx_and_col_p_in_view(self._view.pointer(), self.pointer(), line_nb, elt_id) else : @@ -76,12 +76,12 @@ cdef class Column_multi_elts_str(Column_multi_elts): cpdef object get_line(self, index_t line_nb) : - cdef char* value - cdef object value_in_result - cdef dict result - cdef index_t i - cdef bint all_NA - global obi_errno + cdef const_char_p value + cdef object value_in_result + cdef dict result + cdef index_t i + cdef bint all_NA + global obi_errno result = {} all_NA = True for i in range(self.nb_elements_per_line) :