* Bug #9059 fixed - tbx_build_macros and genlib do not stop on error. 52/11252/2
Charlotte HECQUET [Wed, 10 Apr 2013 08:18:40 +0000 (10:18 +0200)]
Change-Id: I6eeb4d8be67b619467e72838518c6f0965834ca9

scilab/CHANGES_5.5.X
scilab/modules/functions/macros/genlib.sci
scilab/modules/functions/tests/nonreg_tests/bug_9059.dia.ref [new file with mode: 0644]
scilab/modules/functions/tests/nonreg_tests/bug_9059.tst [new file with mode: 0644]

index 04a35ce..a1ed92e 100644 (file)
@@ -73,7 +73,9 @@ Bug fixes
 
 * Bug #8680 fixed - Output argument "end" of the regexp function has been changed.
 
-* Bug #8824 fixed - taucs_chfact returned a segfault (not the case in mode nwni)
+* Bug #8824 fixed - taucs_chfact returned a segfault (not the case in mode nwni).
+
+* Bug #9059 fixed - tbx_build_macros and genlib do not stop on error.
 
 * Bug #10862 fixed - Add a without internet connection installation
                      global configuration on the installer
index b53d4f3..5d8acfa 100644 (file)
@@ -236,7 +236,8 @@ function result = getsave(scifile)
 
   if ierr <> 0 then
     clear ierr;
-    mprintf(gettext("%s: Warning: Error in file %s : %s. File ignored\n"),"genlib",scifile,lasterror());
+    //mprintf(gettext("%s: Warning: Error in file %s : %s. File ignored\n"),"genlib",scifile,lasterror());
+    error(msprintf(gettext("%s: Error in file %s : %s.\n"), "genlib", scifile, lasterror()));
     result = %f;
 
   else
diff --git a/scilab/modules/functions/tests/nonreg_tests/bug_9059.dia.ref b/scilab/modules/functions/tests/nonreg_tests/bug_9059.dia.ref
new file mode 100644 (file)
index 0000000..d7967e8
--- /dev/null
@@ -0,0 +1,27 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2013 - Scilab Enterprises - Charlotte HECQUET
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+//
+// <-- CLI SHELL MODE -->
+//
+// <-- Non-regression test for bug 9059 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/show_bug.cgi?id=9059
+//
+// <-- Short Description -->
+// tbx_build_macros and genlib do not stop on error
+cd TMPDIR;
+mkdir('bug_9059');
+f = ['function [t] = macrobug(z)'; 't=z/'; 'endfunction'];
+mputl(f,TMPDIR+'/bug_9059/macrobug.sci');
+cd('bug_9059');
+exec("macrobug.sci","errcatch");
+str=lasterror();
+msgerr="%s: Error in file %s : %s.\n";
+assert_checkerror("genlib(''bug_9059lib'',''TMPDIR/bug_9059'',%f,%t)",msgerr,[],"genlib",TMPDIR +"/bug_9059/macrobug.sci",str);
+-- Création de [bug_9059lib] (Macros) --
+genlib : Traitement du fichier : macrobug.sci
diff --git a/scilab/modules/functions/tests/nonreg_tests/bug_9059.tst b/scilab/modules/functions/tests/nonreg_tests/bug_9059.tst
new file mode 100644 (file)
index 0000000..828e694
--- /dev/null
@@ -0,0 +1,26 @@
+// =============================================================================
+// Scilab ( http://www.scilab.org/ ) - This file is part of Scilab
+// Copyright (C) 2013 - Scilab Enterprises - Charlotte HECQUET
+//
+//  This file is distributed under the same license as the Scilab package.
+// =============================================================================
+//
+// <-- CLI SHELL MODE -->
+//
+// <-- Non-regression test for bug 9059 -->
+//
+// <-- Bugzilla URL -->
+// http://bugzilla.scilab.org/show_bug.cgi?id=9059
+//
+// <-- Short Description -->
+// tbx_build_macros and genlib do not stop on error
+
+cd TMPDIR;
+mkdir('bug_9059');
+f = ['function [t] = macrobug(z)'; 't=z/'; 'endfunction'];
+mputl(f,TMPDIR+'/bug_9059/macrobug.sci');
+cd('bug_9059');
+exec("macrobug.sci","errcatch");
+str=lasterror();
+msgerr="%s: Error in file %s : %s.\n";
+assert_checkerror("genlib(''bug_9059lib'',''TMPDIR/bug_9059'',%f,%t)",msgerr,[],"genlib",TMPDIR +"/bug_9059/macrobug.sci",str);