summaryrefslogtreecommitdiffstats
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/events/Delta.cpp7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/server/events/Delta.cpp b/src/server/events/Delta.cpp
index 065743dd..c3d4e458 100644
--- a/src/server/events/Delta.cpp
+++ b/src/server/events/Delta.cpp
@@ -381,13 +381,17 @@ Delta::post_process()
_create_event->post_process();
} else {
respond();
- _engine.broadcaster()->set_ignore_client(_request_client);
switch (_type) {
case Type::SET:
+ /* Kludge to avoid feedback for set events only. The GUI
+ depends on put responses to e.g. initially place blocks.
+ Some more sensible way of controlling this is needed. */
+ _engine.broadcaster()->set_ignore_client(_request_client);
_engine.broadcaster()->set_property(
_subject,
(*_properties.begin()).first,
(*_properties.begin()).second);
+ _engine.broadcaster()->clear_ignore_client();
break;
case Type::PUT:
_engine.broadcaster()->put(_subject, _properties, _context);
@@ -396,7 +400,6 @@ Delta::post_process()
_engine.broadcaster()->delta(_subject, _remove, _properties);
break;
}
- _engine.broadcaster()->clear_ignore_client();
}
} else {
respond();