* Bug #14941 fixed - find() did not accept encoded integers 41/18841/3
Samuel GOUGEON [Thu, 5 Jan 2017 01:24:45 +0000 (02:24 +0100)]
  http://bugzilla.scilab.org/14941

Change-Id: I3c7c582681fc5fa70d4cb790ec54f07976bfe479

scilab/CHANGES.md
scilab/modules/overloading/macros/%i_find.sci [new file with mode: 0644]
scilab/modules/overloading/tests/nonreg_tests/bug_14941.tst [new file with mode: 0644]

index 21b3c13..9a8c9a9 100644 (file)
@@ -435,6 +435,7 @@ Bug Fixes
 * [#14839](http://bugzilla.scilab.org/show_bug.cgi?id=14839): `plot2d2` crashed Scilab.
 * [#14887](http://bugzilla.scilab.org/show_bug.cgi?id=14887): For many graphic handle types, the display of the `.tag` value missed `".."` delimiters
 * [#14909](http://bugzilla.scilab.org/show_bug.cgi?id=14909): getlongpathname and getshortpathname return values with "\" instead of "/"
+* [#14941](http://bugzilla.scilab.org/show_bug.cgi?id=14941): `find` did not accept encoded integers
 
 ### Bugs fixed in 6.0.0 beta-2 and earlier 6.0.0 pre-releases:
 
diff --git a/scilab/modules/overloading/macros/%i_find.sci b/scilab/modules/overloading/macros/%i_find.sci
new file mode 100644 (file)
index 0000000..8a7b51e
--- /dev/null
@@ -0,0 +1,15 @@
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab\r
+// Copyright (C) 2017 - Samuel GOUGEON\r
+//\r
+// Copyright (C) 2012 - 2017 - Scilab Enterprises\r
+//\r
+// This file is hereby licensed under the terms of the GNU GPL v2.0,\r
+// pursuant to article 5.3.4 of the CeCILL v.2.1.\r
+// This file was originally licensed under the terms of the CeCILL v2.1,\r
+// and continues to be available under such terms.\r
+// For more information, see the COPYING file which you should have received\r
+// along with this program.\r
+\r
+function indices = %i_find(j)\r
+    indices = find(j~=0)\r
+endfunction\r
diff --git a/scilab/modules/overloading/tests/nonreg_tests/bug_14941.tst b/scilab/modules/overloading/tests/nonreg_tests/bug_14941.tst
new file mode 100644 (file)
index 0000000..4d107ec
--- /dev/null
@@ -0,0 +1,23 @@
+//<-- CLI SHELL MODE -->\r
+// =============================================================================\r
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab\r
+// Copyright (C) 2017 - Samuel GOUGEON\r
+//\r
+//  This file is distributed under the same license as the Scilab package.\r
+// =============================================================================\r
+//\r
+// <-- Non-regression test for bug 14941 -->\r
+//\r
+// <-- Bugzilla URL -->\r
+// http://bugzilla.scilab.org/14941\r
+//\r
+// <-- NO CHECK REF -->  // no reason to test the display\r
+//\r
+// <-- Short Description -->\r
+// find() did not accept encoded integers\r
+\r
+m = grand(3,5,"uin",1,10);\r
+for i = [1 2 4 8 11 12 14 18]\r
+    mi = iconvert(m,i);\r
+    assert_checkequal(find(mi), 1:15);\r
+end\r