Index: /trunk/src/VBox/HostServices/GuestProperties/service.cpp
===================================================================
--- /trunk/src/VBox/HostServices/GuestProperties/service.cpp	(revision 13178)
+++ /trunk/src/VBox/HostServices/GuestProperties/service.cpp	(revision 13179)
@@ -214,6 +214,6 @@
     int getPropValue(uint32_t cParms, VBOXHGCMSVCPARM paParms[]);
     int getProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[]);
-    int setProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[]);
-    int delProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[]);
+    int setProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[], bool notify);
+    int delProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[], bool notify);
     int enumProps(uint32_t cParms, VBOXHGCMSVCPARM paParms[]);
     void notifyHost(const char *pszProperty);
@@ -446,5 +446,5 @@
  * @thread  HGCM
  */
-int Service::setProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[])
+int Service::setProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[], bool notify)
 {
     int rc = VINF_SUCCESS;
@@ -524,5 +524,6 @@
     if (RT_SUCCESS(rc))
     {
-        notifyHost(pszName);
+        if (notify)
+            notifyHost(pszName);
         Log2(("Set string %s, rc=%Rrc, value=%s\n", pszName, rc, pszValue));
     }
@@ -541,5 +542,5 @@
  * @thread  HGCM
  */
-int Service::delProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[])
+int Service::delProperty(uint32_t cParms, VBOXHGCMSVCPARM paParms[], bool notify)
 {
     int rc = VINF_SUCCESS;
@@ -559,5 +560,6 @@
     {
         CFGMR3RemoveValue(mpValueNode, pszName);
-        notifyHost(pszName);
+        if (notify)
+            notifyHost(pszName);
     }
     LogFlowThisFunc(("rc = %Rrc\n", rc));
@@ -879,5 +881,5 @@
         case SET_PROP:
             LogFlowFunc(("SET_PROP\n"));
-            rc = setProperty(cParms, paParms);
+            rc = setProperty(cParms, paParms, true);
             break;
 
@@ -885,5 +887,5 @@
         case SET_PROP_VALUE:
             LogFlowFunc(("SET_PROP_VALUE\n"));
-            rc = setProperty(cParms, paParms);
+            rc = setProperty(cParms, paParms, true);
             break;
 
@@ -891,5 +893,5 @@
         case DEL_PROP:
             LogFlowFunc(("DEL_PROP\n"));
-            rc = delProperty(cParms, paParms);
+            rc = delProperty(cParms, paParms, true);
             break;
 
@@ -972,5 +974,5 @@
         case SET_PROP_HOST:
             LogFlowFunc(("SET_PROP_HOST\n"));
-            rc = setProperty(cParms, paParms);
+            rc = setProperty(cParms, paParms, false);
             break;
 
@@ -978,5 +980,5 @@
         case SET_PROP_VALUE_HOST:
             LogFlowFunc(("SET_PROP_VALUE_HOST\n"));
-            rc = setProperty(cParms, paParms);
+            rc = setProperty(cParms, paParms, false);
             break;
 
@@ -984,5 +986,5 @@
         case DEL_PROP_HOST:
             LogFlowFunc(("DEL_PROP_HOST\n"));
-            rc = delProperty(cParms, paParms);
+            rc = delProperty(cParms, paParms, false);
             break;
 
