Subversion Repositories HelenOS

Rev

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

Rev 4357 Rev 4368
Line 214... Line 214...
214
                    }
214
                    }
215
                } else {
215
                } else {
216
                    ipc_answer_0(rid, ENOSPC);
216
                    ipc_answer_0(rid, ENOSPC);
217
                }
217
                }
218
                goto out;
218
                goto out;
219
            } else if (lflag & L_PARENT) {
-
 
220
                /* return parent */
-
 
221
                ipc_answer_5(rid, EOK, fs_handle, dev_handle,
-
 
222
                    ops->index_get(cur), ops->size_get(cur),
-
 
223
                    ops->lnkcnt_get(cur));
-
 
224
            }
219
            }
225
            ipc_answer_0(rid, ENOENT);
220
            ipc_answer_0(rid, ENOENT);
226
            goto out;
221
            goto out;
227
        }
222
        }
228
 
223
 
Line 291... Line 286...
291
        ipc_answer_0(rid, ENOENT);
286
        ipc_answer_0(rid, ENOENT);
292
        goto out;
287
        goto out;
293
    }
288
    }
294
 
289
 
295
    /* handle hit */
290
    /* handle hit */
296
    if (lflag & L_PARENT) {
-
 
297
        ops->node_put(cur);
-
 
298
        cur = par;
-
 
299
        par = NULL;
-
 
300
        if (!cur) {
-
 
301
            ipc_answer_0(rid, ENOENT);
-
 
302
            goto out;
-
 
303
        }
-
 
304
    }
-
 
305
    if (lflag & L_UNLINK) {
291
    if (lflag & L_UNLINK) {
306
        unsigned old_lnkcnt = ops->lnkcnt_get(cur);
292
        unsigned old_lnkcnt = ops->lnkcnt_get(cur);
307
        int res = ops->unlink(par, cur);
293
        int res = ops->unlink(par, cur);
308
        ipc_answer_5(rid, (ipcarg_t)res, fs_handle, dev_handle,
294
        ipc_answer_5(rid, (ipcarg_t)res, fs_handle, dev_handle,
309
            ops->index_get(cur), ops->size_get(cur), old_lnkcnt);
295
            ops->index_get(cur), ops->size_get(cur), old_lnkcnt);