diff --git a/gobject/pygtype.c b/gobject/pygtype.c
index 5ee54aa..aafbc43 100644
--- a/gobject/pygtype.c
+++ b/gobject/pygtype.c
@@ -1140,7 +1140,16 @@ pyg_value_as_pyobject(const GValue *value, gboolean copy_boxed)
     case G_TYPE_PARAM:
 	return pyg_param_spec_new(g_value_get_param(value));
     case G_TYPE_OBJECT:
-	return pygobject_new_sunk(g_value_get_object(value));
+        {
+            GObject *obj;
+
+            obj = g_value_get_object(value);
+            if (obj)
+                return pygobject_new_sunk(obj);
+
+            Py_INCREF(Py_None);
+            return Py_None;
+        }
     default:
 	{
 	    PyGTypeMarshal *bm;
