Okay, a little bit more information, but sadly not enough to know what's going on.
I gdb'd the process into pygobject_get_property() in python-gobject. What appears to be happening is that the call to
g_value_init(&value, G_PARAM_SPEC_VALUE_TYPE(pspec));
is filling value with an empty string, so pyg_param_gvalue_as_pyobject() will naturally return the Python empty string object. I have no idea why g_value_init() is doing that, and gdb is not behaving well enough for me to trace into that function.
Okay, a little bit more information, but sadly not enough to know what's going on.
I gdb'd the process into pygobject_ get_property( ) in python-gobject. What appears to be happening is that the call to
g_value_ init(&value, G_PARAM_ SPEC_VALUE_ TYPE(pspec) );
is filling value with an empty string, so pyg_param_ gvalue_ as_pyobject( ) will naturally return the Python empty string object. I have no idea why g_value_init() is doing that, and gdb is not behaving well enough for me to trace into that function.