diff src/ov-re-mat.cc @ 6717:b319df52ba87

[project @ 2007-06-13 20:25:53 by jwe]
author jwe
date Wed, 13 Jun 2007 20:25:53 +0000
parents 2aad75fcc93a
children 9e32bb109980
line wrap: on
line diff
--- a/src/ov-re-mat.cc
+++ b/src/ov-re-mat.cc
@@ -316,19 +316,34 @@
 	      for (int i = 0; i < mdims; i++)
 		is >> dv(i);
 
-	      NDArray tmp(dv);
-	      is >> tmp;
+	      if (is)
+		{
+		  NDArray tmp(dv);
+
+		  if (tmp.is_empty ())
+		    matrix = tmp;
+		  else
+		    {
+		      is >> tmp;
 
-	      if (!is) 
+		      if (is)
+			matrix = tmp;
+		      else
+			{
+			  error ("load: failed to load matrix constant");
+			  success = false;
+			}
+		    }
+		}
+	      else
 		{
-		  error ("load: failed to load matrix constant");
+		  error ("load: failed to read dimensions");
 		  success = false;
 		}
-	      matrix = tmp;
 	    }
 	  else
 	    {
-	      error ("load: failed to extract number of rows and columns");
+	      error ("load: failed to extract number of dimensions");
 	      success = false;
 	    }
 	}