summaryrefslogtreecommitdiff
path: root/source3/smbd
diff options
context:
space:
mode:
Diffstat (limited to 'source3/smbd')
-rw-r--r--source3/smbd/notify.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/source3/smbd/notify.c b/source3/smbd/notify.c
index 9074990be7..1b75916942 100644
--- a/source3/smbd/notify.c
+++ b/source3/smbd/notify.c
@@ -328,7 +328,7 @@ void notify_fname(connection_struct *conn, uint32 action, uint32 filter,
static void notify_fsp(files_struct *fsp, uint32 action, const char *name)
{
struct notify_change *change, *changes;
- pstring name2;
+ char *tmp;
if (fsp->notify == NULL) {
/*
@@ -337,9 +337,6 @@ static void notify_fsp(files_struct *fsp, uint32 action, const char *name)
return;
}
- pstrcpy(name2, name);
- string_replace(name2, '/', '\\');
-
/*
* Someone has triggered a notify previously, queue the change for
* later.
@@ -370,11 +367,14 @@ static void notify_fsp(files_struct *fsp, uint32 action, const char *name)
change = &(fsp->notify->changes[fsp->notify->num_changes]);
- if (!(change->name = talloc_strdup(changes, name2))) {
+ if (!(tmp = talloc_strdup(changes, name))) {
DEBUG(0, ("talloc_strdup failed\n"));
return;
}
+ string_replace(tmp, '/', '\\');
+ change->name = tmp;
+
change->action = action;
fsp->notify->num_changes += 1;