diff --git a/rigify/generate.py b/rigify/generate.py
index 53b47b00621f385dee1e652123ceb0ea51d09f89..d63399cc0e1e0193cff612be2a4453db3cd089c9 100644
--- a/rigify/generate.py
+++ b/rigify/generate.py
@@ -117,7 +117,7 @@ class Generator(base_generate.BaseGenerator):
         wgts_group_name = "WGTS_" + self.obj.name
         old_collection = bpy.data.collections.get(wgts_group_name)
 
-        if old_collection.library:
+        if old_collection and old_collection.library:
             old_collection = None
 
         if not old_collection:
diff --git a/rigify/utils/widgets.py b/rigify/utils/widgets.py
index ca207ddcce5d9eb41d8138cb1ad0871a0fd983c7..5a16065b6770a6dd4f868c514ceb7b50e7d78caf 100644
--- a/rigify/utils/widgets.py
+++ b/rigify/utils/widgets.py
@@ -86,7 +86,7 @@ def create_widget(rig, bone_name, bone_transform_name=None, *, widget_name=None,
         if not obj:
             # Search the scene by name
             obj = scene.objects.get(obj_name)
-            if obj.library:
+            if obj and obj.library:
                 local_objs = [obj for obj in scene.objects if obj.name == obj_name and not obj.library]
                 obj = local_objs[0] if local_objs else None