27
27
/* ================================================================================== */
28
28
int sci_getrelativefilename(char *fname, unsigned long l)
30
static int n1 = 0,m1 = 0,n2 = 0,m2 = 0;
35
if ( (GetType(1) == sci_strings) && (GetType(2) == sci_strings) )
39
char *result=(char*)MALLOC(PATH_MAX*sizeof(char));
41
GetRhsVar(1,MATRIX_OF_STRING_DATATYPE,&m1,&n1,¶m1);
45
freeArrayOfString(param1,m1*n1);
46
Scierror(999,_("%s: Wrong size for input argument #%d: A string expected.\n"),fname,1);
50
GetRhsVar(2,MATRIX_OF_STRING_DATATYPE,&m2,&n2,¶m2);
53
freeArrayOfString(param1,m1*n1);
54
freeArrayOfString(param2,m2*n2);
55
Scierror(999,_("%s: Wrong size for input argument #%d: A string expected.\n"),fname,2);
59
// make sure the names are not too long
61
if( strlen(param1[0]) > PATH_MAX )
63
Scierror(999,_("%s: Wrong size for input argument #%d: Must be less than %d characters.\n"),fname,1,PATH_MAX);
66
if( strlen(param2[0]) > PATH_MAX )
68
Scierror(999,_("%s: Wrong size for input argument #%d: Must be less than %d characters.\n"),fname,2,PATH_MAX);
71
result = getrelativefilename(param1[0],param2[0]);
72
freeArrayOfString(param1,m1*n1);
73
freeArrayOfString(param2,m2*n2);
75
CreateVarFromPtr(Rhs+3,STRING_DATATYPE,(m1=(int)strlen(result), &m1),&n1,&result);
77
if (result) {FREE(result);result=NULL;}
82
if(GetType(1) != sci_strings)
84
Scierror(999,_("%s: Wrong type for input argument #%d: A string expected.\n"),fname,1);
88
Scierror(999,_("%s: Wrong type for input argument #%d: A string expected.\n"),fname,2);
30
static int n1 = 0, m1 = 0, n2 = 0, m2 = 0;
35
if ( (GetType(1) == sci_strings) && (GetType(2) == sci_strings) )
39
char *result = (char*)MALLOC(PATH_MAX * sizeof(char));
41
GetRhsVar(1, MATRIX_OF_STRING_DATATYPE, &m1, &n1, ¶m1);
45
freeArrayOfString(param1, m1 * n1);
46
Scierror(999, _("%s: Wrong size for input argument #%d: A string expected.\n"), fname, 1);
50
GetRhsVar(2, MATRIX_OF_STRING_DATATYPE, &m2, &n2, ¶m2);
53
freeArrayOfString(param1, m1 * n1);
54
freeArrayOfString(param2, m2 * n2);
55
Scierror(999, _("%s: Wrong size for input argument #%d: A string expected.\n"), fname, 2);
59
// make sure the names are not too long
61
if ( strlen(param1[0]) > PATH_MAX )
63
Scierror(999, _("%s: Wrong size for input argument #%d: Must be less than %d characters.\n"), fname, 1, PATH_MAX);
66
if ( strlen(param2[0]) > PATH_MAX )
68
Scierror(999, _("%s: Wrong size for input argument #%d: Must be less than %d characters.\n"), fname, 2, PATH_MAX);
71
result = getrelativefilename(param1[0], param2[0]);
72
freeArrayOfString(param1, m1 * n1);
73
freeArrayOfString(param2, m2 * n2);
75
m1 = (int)strlen(result);
76
CreateVarFromPtr(Rhs + 3, STRING_DATATYPE, &m1, &n1, &result);
87
if (GetType(1) != sci_strings)
89
Scierror(999, _("%s: Wrong type for input argument #%d: A string expected.\n"), fname, 1);
93
Scierror(999, _("%s: Wrong type for input argument #%d: A string expected.\n"), fname, 2);