Subversion Repositories HelenOS

Rev

Rev 3413 | Rev 4264 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 3413 Rev 3813
Line 91... Line 91...
91
    char *dirs[255];
91
    char *dirs[255];
92
    unsigned int absolute = 0, i = 0, ret = 0;
92
    unsigned int absolute = 0, i = 0, ret = 0;
93
 
93
 
94
    /* Its a good idea to allocate path, plus we (may) need a copy of
94
    /* Its a good idea to allocate path, plus we (may) need a copy of
95
     * path to tokenize if parents are specified */
95
     * path to tokenize if parents are specified */
96
    if (NULL == (tmp = cli_strdup(path))) {
96
    if (NULL == (tmp = strdup(path))) {
97
        cli_error(CL_ENOMEM, "%s: path too big?", cmdname);
97
        cli_error(CL_ENOMEM, "%s: path too big?", cmdname);
98
        return 1;
98
        return 1;
99
    }
99
    }
100
 
100
 
101
    if (NULL == (wdp = (char *) malloc(PATH_MAX))) {
101
    if (NULL == (wdp = (char *) malloc(PATH_MAX))) {
Line 126... Line 126...
126
    /* See if path[0] is a slash, if so we have to remember to append it */
126
    /* See if path[0] is a slash, if so we have to remember to append it */
127
    if (tmp[0] == '/')
127
    if (tmp[0] == '/')
128
        absolute = 1;
128
        absolute = 1;
129
 
129
 
130
    /* TODO: Canonify the path prior to tokenizing it, see below */
130
    /* TODO: Canonify the path prior to tokenizing it, see below */
131
    dirs[i] = cli_strtok(tmp, "/");
131
    dirs[i] = strtok(tmp, "/");
132
    while (dirs[i] && i < 255)
132
    while (dirs[i] && i < 255)
133
        dirs[++i] = cli_strtok(NULL, "/");
133
        dirs[++i] = strtok(NULL, "/");
134
 
134
 
135
    if (NULL == dirs[0])
135
    if (NULL == dirs[0])
136
        return 1;
136
        return 1;
137
 
137
 
138
    if (absolute == 1) {
138
    if (absolute == 1) {