#include <atalk/bstradd.h>
#include "directory.h"
+#include "dircache.h"
#include "desktop.h"
#include "volume.h"
#include "fork.h"
}
else {
rc = deletefile(vol, -1, upath, 1);
+
+ struct dir *cachedfile;
+ if (cachedfile = dircache_search_by_name(vol, dir, upath, strlen(upath))) {
+ dircache_remove(vol, dir, DIRCACHE | DIDNAME_INDEX | QUEUE_INDEX);
+ dir_free(cachedfile);
+ }
}
}
if ( rc == AFP_OK ) {
if (!cur_fd)
return 0;
+
+ LOG(log_maxdebug, logtype_cnid, "comm_rcv: got data on fd %u", cur_fd);
+
nametmp = rqst->name;
if ((b = read(cur_fd, rqst, sizeof(struct cnid_dbd_rqst))) != sizeof(struct cnid_dbd_rqst)) {
if (b)
needs zero terminated strings. */
rqst->name[rqst->namelen] = '\0';
+ LOG(log_maxdebug, logtype_cnid, "comm_rcv: got %u bytes", b + rqst->namelen);
+
return 1;
}
/*
- * $Id: main.c,v 1.16 2009-11-25 14:59:15 franklahm Exp $
- *
* Copyright (C) Joerg Lenneis 2003
* Copyright (c) Frank Lahm 2009
* All Rights Reserved. See COPYING.
ret = -1;
break;
}
-
+
if ((cret = comm_snd(&rply)) < 0 || ret < 0) {
dbif_txn_abort(dbd);
return -1;