* Bug 16459 fixed: The display of one-column hypermatrix was wrong 82/21482/3
Stéphane Mottelet [Tue, 2 Jun 2020 22:47:53 +0000 (00:47 +0200)]
http://bugzilla.scilab.org/show_bug.cgi?id=16459

Change-Id: I7b0fbaf7006691123f8a741ac53cc286d6913e39

scilab/CHANGES.md
scilab/modules/ast/src/cpp/types/double.cpp
scilab/modules/ast/tests/nonreg_tests/bug_16459.dia.ref [new file with mode: 0644]
scilab/modules/ast/tests/nonreg_tests/bug_16459.tst [new file with mode: 0644]

index ff36a56..2850755 100644 (file)
@@ -535,3 +535,4 @@ Bug Fixes
 * [#16325](https://bugzilla.scilab.org/16325): `mgetl` could not read single line data which is greater than ~260,000 characters.
 * [#16333](https://bugzilla.scilab.org/16333): `tree_show` crashed for an input Xcos block.
 * [#16373](https://bugzilla.scilab.org/16373): Scilab Crashed or showing wrong output when running on Arm processor
+* [#16459](https://bugzilla.scilab.org/16459): The display of one column hypermatrix was wrong.
index 46b8175..584ef51 100644 (file)
@@ -392,7 +392,7 @@ bool Double::subMatrixToString(std::wostringstream& ostr, int* _piDims, int /*_i
             ostr << std::endl;
         }
     }
-    else if (getCols() == 1 && isComplex() == false)
+    else if (isVector() && getCols() == 1 && isComplex() == false)
     {
         // real column vector
 
diff --git a/scilab/modules/ast/tests/nonreg_tests/bug_16459.dia.ref b/scilab/modules/ast/tests/nonreg_tests/bug_16459.dia.ref
new file mode 100644 (file)
index 0000000..349ab0e
--- /dev/null
@@ -0,0 +1,34 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2020 - Stéphane MOTTELET
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+//
+// <-- CLI SHELL MODE -->
+//
+// <-- Non-regression test for bug 16459 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/16459
+//
+// <-- Short Description -->
+// The display of one column hypermatrix is wrong
+matrix(1:8, [1,1,2,2,2])
+ ans  =
+(:,:,1,1,1)
+   1.
+(:,:,2,1,1)
+   2.
+(:,:,1,2,1)
+   3.
+(:,:,2,2,1)
+   4.
+(:,:,1,1,2)
+   5.
+(:,:,2,1,2)
+   6.
+(:,:,1,2,2)
+   7.
+(:,:,2,2,2)
+   8.
diff --git a/scilab/modules/ast/tests/nonreg_tests/bug_16459.tst b/scilab/modules/ast/tests/nonreg_tests/bug_16459.tst
new file mode 100644 (file)
index 0000000..4850084
--- /dev/null
@@ -0,0 +1,18 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2020 - Stéphane MOTTELET
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+//
+// <-- CLI SHELL MODE -->
+//
+// <-- Non-regression test for bug 16459 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/16459
+//
+// <-- Short Description -->
+// The display of one column hypermatrix is wrong
+
+matrix(1:8, [1,1,2,2,2])