From: Diemo S. <di...@us...> - 2008-06-19 14:00:06
|
Update of /cvsroot/ftm/ftm/ftmlib/classes In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv12690 Modified Files: mat.c Log Message: must init elements in creation: ma_init replaces ma_reshape Index: mat.c =================================================================== RCS file: /cvsroot/ftm/ftm/ftmlib/classes/mat.c,v retrieving revision 1.34 retrieving revision 1.35 diff -C2 -d -r1.34 -r1.35 *** mat.c 19 Jun 2008 00:17:45 -0000 1.34 --- mat.c 19 Jun 2008 14:00:11 -0000 1.35 *************** *** 55,65 **** ! static void ma_reshape(mat_t *self, int m, int n) { int size = m * n; ! if (size > self->alloc) ma_realloc(self, size); self->m = m; self->n = n; --- 55,69 ---- ! static void ma_init (mat_t *self, int m, int n) { int size = m * n; ! int i; ! if (size > self->alloc) ma_realloc(self, size); + for (i = 0; i < size; i++) + fts_set_int(self->data + i, 0); + self->m = m; self->n = n; *************** *** 1545,1553 **** if (ac == 0) ! ma_reshape(self, 0, 0); else if (ac == 1 && fts_is_int(at)) ! ma_reshape(self, fts_get_int(at), 1); else if (ac == 2 && fts_is_int(at) && fts_is_int(at + 1)) ! ma_reshape(self, fts_get_int(at), fts_get_int(at + 1)); else if(ac > 2 && fts_is_int(at) && fts_is_int(at + 1)) /* init from atom list */ { --- 1549,1557 ---- if (ac == 0) ! ma_init(self, 0, 0); else if (ac == 1 && fts_is_int(at)) ! ma_init(self, fts_get_int(at), 1); else if (ac == 2 && fts_is_int(at) && fts_is_int(at + 1)) ! ma_init(self, fts_get_int(at), fts_get_int(at + 1)); else if(ac > 2 && fts_is_int(at) && fts_is_int(at + 1)) /* init from atom list */ { *************** *** 1556,1560 **** int size = m * n; int i = 0; ! ma_reshape(self, m, n); mat_set_with_onset_from_atoms( self, 0, ac-2, at+2); --- 1560,1565 ---- int size = m * n; int i = 0; ! ! ma_init(self, m, n); mat_set_with_onset_from_atoms( self, 0, ac-2, at+2); *************** *** 1586,1590 **** } ! ma_reshape(self, m, n); mat_set_from_tuples(self, ac, at); } --- 1591,1595 ---- } ! ma_init(self, m, n); mat_set_from_tuples(self, ac, at); } |