diff --git a/space_view3d_copy_attributes.py b/space_view3d_copy_attributes.py
index 5461002d09daa0aec0afac364bdd65138b58804b..d171d2c27eb8e26d6eda074c7b017862d119ac9b 100644
--- a/space_view3d_copy_attributes.py
+++ b/space_view3d_copy_attributes.py
@@ -788,8 +788,6 @@ def register():
         else:
             kmi = km.keymap_items.new('wm.call_menu', 'C', 'PRESS', ctrl=True)
         kmi.properties.name = 'VIEW3D_MT_posecopypopup'
-        for menu in _layer_menus:
-            bpy.utils.register_class(menu)
 
         km = kc.keymaps.new(name="Mesh")
         kmi = km.keymap_items.new('wm.call_menu', 'C', 'PRESS')
@@ -801,23 +799,27 @@ def unregister():
     # mostly to remove the keymap
     kc = bpy.context.window_manager.keyconfigs.addon
     if kc:
-        kms = kc.keymaps['Pose']
-        for item in kms.keymap_items:
-            if item.name == 'Call Menu' and item.idname == 'wm.call_menu' and \
-               item.properties.name == 'VIEW3D_MT_posecopypopup':
-                item.idname = 'pose.copy'
-                break
-        km = kc.keymaps['Mesh']
-        for kmi in km.keymap_items:
-            if kmi.idname == 'wm.call_menu':
-                if kmi.properties.name == 'MESH_MT_CopyFaceSettings':
-                    km.keymap_items.remove(kmi)
-
-        km = kc.keymaps['Object Mode']
-        for kmi in km.keymap_items:
-            if kmi.idname == 'wm.call_menu':
-                if kmi.properties.name == 'VIEW3D_MT_copypopup':
-                    km.keymap_items.remove(kmi)
+        kms = kc.keymaps.get('Pose')
+        if kms is not None:
+            for item in kms.keymap_items:
+                if item.name == 'Call Menu' and item.idname == 'wm.call_menu' and \
+                   item.properties.name == 'VIEW3D_MT_posecopypopup':
+                    item.idname = 'pose.copy'
+                    break
+
+        km = kc.keymaps.get('Mesh')
+        if km is not None:
+            for kmi in km.keymap_items:
+                if kmi.idname == 'wm.call_menu':
+                    if kmi.properties.name == 'MESH_MT_CopyFaceSettings':
+                        km.keymap_items.remove(kmi)
+
+        km = kc.keymaps.get('Object Mode')
+        if km is not None:
+            for kmi in km.keymap_items:
+                if kmi.idname == 'wm.call_menu':
+                    if kmi.properties.name == 'VIEW3D_MT_copypopup':
+                        km.keymap_items.remove(kmi)
 
     bpy.utils.unregister_module(__name__)