# HG changeset patch # User jwe # Date 798494343 0 # Node ID d607adf5af66fc94d8b342d6b37b3a9fba48c3d4 # Parent 3051623587278db58b3a26dc885d29cac1463ef2 [project @ 1995-04-21 19:59:03 by jwe] diff -r 305162358727 -r d607adf5af66 src/load-save.cc --- a/src/load-save.cc Fri Apr 21 19:38:45 1995 +0000 +++ b/src/load-save.cc Fri Apr 21 19:59:03 1995 +0000 @@ -1293,15 +1293,22 @@ { int nr = 0, nc = 0; - if (extract_keyword (is, "rows", nr) && nr > 0 - && extract_keyword (is, "columns", nc) && nc > 0) + if (extract_keyword (is, "rows", nr) && nr >= 0 + && extract_keyword (is, "columns", nc) && nc >= 0) { - Matrix tmp (nr, nc); - is >> tmp; - if (is) - tc = tmp; + if (nr > 0 && nc > 0) + { + Matrix tmp (nr, nc); + is >> tmp; + if (is) + tc = tmp; + else + error ("load: failed to load matrix constant"); + } + else if (nr == 0 || nc == 0) + tc = Matrix (nr, nc); else - error ("load: failed to load matrix constant"); + panic_impossible (); } else error ("load: failed to extract number of rows and columns");