]> granicus.if.org Git - icinga2/commitdiff
Bugfix for deleting delegates.
authorGunnar Beutner <gunnar.beutner@netways.de>
Fri, 27 Apr 2012 11:11:07 +0000 (13:11 +0200)
committerGunnar Beutner <gunnar.beutner@netways.de>
Fri, 27 Apr 2012 11:11:07 +0000 (13:11 +0200)
base/event.h
components/demo/demo.vcxproj.filters [new file with mode: 0644]
jsonrpc/jsonrpc.vcxproj.filters [new file with mode: 0644]

index 725b4a03fc9b7a4de885d057526d39b83c0bf106..9628142af0c431b54ff9f76c42d476225c5cda58 100644 (file)
@@ -33,16 +33,15 @@ public:
 
        void operator()(const TArgs& args)
        {
-               typename vector<DelegateType>::iterator prev, i;
+               typename vector<DelegateType>::iterator i;
 
                for (i = m_Delegates.begin(); i != m_Delegates.end(); ) {
-                       prev = i;
-                       i++;
-
-                       int result = (*prev)(args);
+                       int result = (*i)(args);
 
                        if (result == -1)
-                               m_Delegates.erase(prev);
+                               i = m_Delegates.erase(i);
+                       else
+                               i++;
                }
        }
 };
diff --git a/components/demo/demo.vcxproj.filters b/components/demo/demo.vcxproj.filters
new file mode 100644 (file)
index 0000000..51b6a05
--- /dev/null
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <ClInclude Include="i2-demo.h" />
+    <ClInclude Include="democomponent.h" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClCompile Include="democomponent.cpp" />
+  </ItemGroup>
+</Project>
\ No newline at end of file
diff --git a/jsonrpc/jsonrpc.vcxproj.filters b/jsonrpc/jsonrpc.vcxproj.filters
new file mode 100644 (file)
index 0000000..6e33d29
--- /dev/null
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <ItemGroup>
+    <ClCompile Include="jsonrpcclient.cpp" />
+    <ClCompile Include="jsonrpcserver.cpp" />
+    <ClCompile Include="message.cpp" />
+    <ClCompile Include="netstring.cpp" />
+    <ClCompile Include="jsonrpcrequest.cpp" />
+    <ClCompile Include="jsonrpcresponse.cpp" />
+  </ItemGroup>
+  <ItemGroup>
+    <ClInclude Include="i2-jsonrpc.h" />
+    <ClInclude Include="jsonrpcclient.h" />
+    <ClInclude Include="jsonrpcserver.h" />
+    <ClInclude Include="message.h" />
+    <ClInclude Include="netstring.h" />
+    <ClInclude Include="jsonrpcrequest.h" />
+    <ClInclude Include="jsonrpcresponse.h" />
+  </ItemGroup>
+</Project>
\ No newline at end of file