Index: src/Actions/GraphAction/CorrectBondDegreeAction.cpp
===================================================================
--- src/Actions/GraphAction/CorrectBondDegreeAction.cpp	(revision 1259df9500410b59c3a56d9cf8d54624b53f97da)
+++ src/Actions/GraphAction/CorrectBondDegreeAction.cpp	(revision f3b5971ec8cc96538608d12dd2998861f1e187db)
@@ -67,9 +67,10 @@
 
   // count all present bonds
-  World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+  World::ConstAtomComposite Set = const_cast<const World &>(World::getInstance()).
+      getAllAtoms(AtomsBySelection());
   std::vector<BondInfo_t> bonds;
   {
     size_t count_bonds = 0;
-    for (World::AtomComposite::const_iterator iter = Set.begin();
+    for (World::ConstAtomComposite::const_iterator iter = Set.begin();
         iter != Set.end();
         ++iter) {
@@ -80,5 +81,5 @@
   }
   // Storing undo info
-  for (World::AtomComposite::const_iterator iter = Set.begin();
+  for (World::ConstAtomComposite::const_iterator iter = Set.begin();
       iter != Set.end();
       ++iter) {
@@ -104,5 +105,8 @@
 
   // now recreate adjacency
-  BG->CorrectBondDegree(Set);
+  {
+    World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+    BG->CorrectBondDegree(Set);
+  }
 
   return ActionState::ptr(UndoState);
Index: src/Actions/GraphAction/CreateAdjacencyAction.cpp
===================================================================
--- src/Actions/GraphAction/CreateAdjacencyAction.cpp	(revision 1259df9500410b59c3a56d9cf8d54624b53f97da)
+++ src/Actions/GraphAction/CreateAdjacencyAction.cpp	(revision f3b5971ec8cc96538608d12dd2998861f1e187db)
@@ -68,9 +68,10 @@
 
   // count all present bonds
-  World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+  World::ConstAtomComposite Set = const_cast<const World &>(World::getInstance()).
+      getAllAtoms(AtomsBySelection());
   std::vector<BondInfo_t> bonds;
   {
     size_t count_bonds = 0;
-    for (World::AtomComposite::const_iterator iter = Set.begin();
+    for (World::ConstAtomComposite::const_iterator iter = Set.begin();
         iter != Set.end();
         ++iter) {
@@ -81,5 +82,5 @@
   }
   // Storing undo info
-  for (World::AtomComposite::const_iterator iter = Set.begin();
+  for (World::ConstAtomComposite::const_iterator iter = Set.begin();
       iter != Set.end();
       ++iter) {
@@ -105,5 +106,8 @@
 
   // now recreate adjacency
-  BG->CreateAdjacency(Set);
+  {
+    World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+    BG->CreateAdjacency(Set);
+  }
 
   // give info
Index: src/Actions/GraphAction/DestroyAdjacencyAction.cpp
===================================================================
--- src/Actions/GraphAction/DestroyAdjacencyAction.cpp	(revision 1259df9500410b59c3a56d9cf8d54624b53f97da)
+++ src/Actions/GraphAction/DestroyAdjacencyAction.cpp	(revision f3b5971ec8cc96538608d12dd2998861f1e187db)
@@ -70,5 +70,6 @@
 
   // check precondition
-  World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+  World::ConstAtomComposite Set = const_cast<const World &>(World::getInstance()).
+      getAllAtoms(AtomsBySelection());
   if (Set.empty()) {
     STATUS("No atoms selected.");
@@ -80,5 +81,5 @@
   {
     size_t count_bonds = 0;
-    for (World::AtomComposite::const_iterator iter = Set.begin();
+    for (World::ConstAtomComposite::const_iterator iter = Set.begin();
         iter != Set.end();
         ++iter) {
@@ -89,5 +90,5 @@
   }
   // Storing undo info
-  for (World::AtomComposite::const_iterator iter = Set.begin();
+  for (World::ConstAtomComposite::const_iterator iter = Set.begin();
       iter != Set.end();
       ++iter) {
@@ -113,5 +114,8 @@
 
   LOG(0, "STATUS: Clearing the Adjacency.");
-  BG->cleanAdjacencyList(Set);
+  {
+    World::AtomComposite Set = World::getInstance().getAllAtoms(AtomsBySelection());
+    BG->cleanAdjacencyList(Set);
+  }
 
   return ActionState::ptr(UndoState);
