{
return sci_stacksizeNoRhs(fname);
}
- return dynParallelConcurrency()? dynParallelForbidden(fname) : sci_stacksizeOneRhs(fname);
+ return dynParallelConcurrency() ? dynParallelForbidden(fname) : sci_stacksizeOneRhs(fname);
}
/*--------------------------------------------------------------------------*/
GetRhsVar(1, MATRIX_OF_DOUBLE_DATATYPE, &m1, &n1, &l1);
if ((m1 == 1) && (n1 == 1))
{
- unsigned long NEWMEMSTACKSIZE = (unsigned long)*stk(l1);
+ unsigned long NEWMEMSTACKSIZE = (unsigned long) * stk(l1);
/* add 1 for alignment problems */
if (is_a_valid_size_for_scilab_stack(NEWMEMSTACKSIZE + 1))
{
unsigned long memmaxavailablebyscilab = get_max_memory_for_scilab_stack();
unsigned long newMemSizeMax = maxmemfree;
+ int errCode;
if (memmaxavailablebyscilab < newMemSizeMax)
{
newMemSizeMax = MIN_STACKSIZE;
}
- setStacksize(newMemSizeMax);
+ errCode = setStacksize(newMemSizeMax);
+ if (errCode != 0)
+ {
+ setStacksize(backupSize);
+ Scierror(10001, _("%s: Cannot allocate memory.\n%s\n"), fname, getStackCreationErrorMessage(errCode));
+ }
return 0;
}
else
/*--------------------------------------------------------------------------*/
/*
*
- * @return 0 if success
+ * @return 0 if success
* -1 if cannot allocate this quantity of memory
* -2 if the requested size is smaller than the minimal one
* -3 unable to create (or resize) the stack (probably a malloc error
{
switch (errCode)
{
- case -1:
- return _("%s: Cannot allocate this quantity of memory.\n");
- break;
- case -2:
- return _("%s: The requested size is smaller than the minimal one.\n");
- break;
- case -3:
- return _("%s: Unable to create (or resize) the stack (probably a malloc error).\n");
- break;
+ case -1:
+ return _("%s: Cannot allocate this quantity of memory.\n");
+ break;
+ case -2:
+ return _("%s: The requested size is smaller than the minimal one.\n");
+ break;
+ case -3:
+ return _("%s: Unable to create (or resize) the stack (probably a malloc error).\n");
+ break;
}
return _("%s: Unknown error.\n");
}