diff options
Diffstat (limited to 'source3/smbd')
-rw-r--r-- | source3/smbd/notify.c | 10 |
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; |