From 16fb87c7744985c593dcc4d820c19363d8b0c40f Mon Sep 17 00:00:00 2001 From: conrad Date: Wed, 7 Sep 2022 12:22:36 +1000 Subject: [PATCH] preserve rudimentary colvec and rowvec dimensions --- include/armadillo_bits/Mat_meat.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/include/armadillo_bits/Mat_meat.hpp b/include/armadillo_bits/Mat_meat.hpp index 5ff0c47d..d6a886be 100644 --- a/include/armadillo_bits/Mat_meat.hpp +++ b/include/armadillo_bits/Mat_meat.hpp @@ -1228,8 +1228,8 @@ Mat::steal_mem(Mat& x, const bool is_move) access::rw(mem_state) = x_mem_state; access::rw(mem) = x.mem; - access::rw(x.n_rows) = 0; - access::rw(x.n_cols) = 0; + access::rw(x.n_rows) = (x_vec_state == 2) ? 1 : 0; + access::rw(x.n_cols) = (x_vec_state == 1) ? 1 : 0; access::rw(x.n_elem) = 0; access::rw(x.n_alloc) = 0; access::rw(x.mem_state) = 0; @@ -1243,8 +1243,8 @@ Mat::steal_mem(Mat& x, const bool is_move) if( (is_move) && (x_mem_state == 0) && (x_n_alloc <= arma_config::mat_prealloc) ) { - access::rw(x.n_rows) = 0; - access::rw(x.n_cols) = 0; + access::rw(x.n_rows) = (x_vec_state == 2) ? 1 : 0; + access::rw(x.n_cols) = (x_vec_state == 1) ? 1 : 0; access::rw(x.n_elem) = 0; access::rw(x.mem) = nullptr; }