mirror of
https://github.com/flatpak/flatpak.git
synced 2026-05-04 14:09:09 -04:00
builder: Print warnings for unknown properties
This commit is contained in:
@@ -1021,6 +1021,7 @@ serializable_iface_init (JsonSerializableIface *serializable_iface)
|
||||
{
|
||||
serializable_iface->serialize_property = builder_manifest_serialize_property;
|
||||
serializable_iface->deserialize_property = builder_manifest_deserialize_property;
|
||||
serializable_iface->find_property = builder_serializable_find_property_with_error;
|
||||
}
|
||||
|
||||
const char *
|
||||
|
||||
@@ -779,6 +779,7 @@ serializable_iface_init (JsonSerializableIface *serializable_iface)
|
||||
{
|
||||
serializable_iface->serialize_property = builder_module_serialize_property;
|
||||
serializable_iface->deserialize_property = builder_module_deserialize_property;
|
||||
serializable_iface->find_property = builder_serializable_find_property_with_error;
|
||||
}
|
||||
|
||||
const char *
|
||||
|
||||
@@ -473,6 +473,7 @@ serializable_iface_init (JsonSerializableIface *serializable_iface)
|
||||
{
|
||||
serializable_iface->serialize_property = builder_options_serialize_property;
|
||||
serializable_iface->deserialize_property = builder_options_deserialize_property;
|
||||
serializable_iface->find_property = builder_serializable_find_property_with_error;
|
||||
}
|
||||
|
||||
static GList *
|
||||
|
||||
@@ -208,9 +208,19 @@ builder_source_init (BuilderSource *self)
|
||||
{
|
||||
}
|
||||
|
||||
static GParamSpec *
|
||||
builder_source_find_property (JsonSerializable *serializable,
|
||||
const char *name)
|
||||
{
|
||||
if (strcmp (name, "type") == 0)
|
||||
return NULL;
|
||||
return builder_serializable_find_property_with_error (serializable, name);
|
||||
}
|
||||
|
||||
static void
|
||||
serializable_iface_init (JsonSerializableIface *serializable_iface)
|
||||
{
|
||||
serializable_iface->find_property = builder_source_find_property;
|
||||
}
|
||||
|
||||
JsonNode *
|
||||
|
||||
@@ -1666,3 +1666,13 @@ builder_download_uri (const char *url,
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
GParamSpec *
|
||||
builder_serializable_find_property_with_error (JsonSerializable *serializable,
|
||||
const char *name)
|
||||
{
|
||||
GParamSpec *pspec = g_object_class_find_property (G_OBJECT_GET_CLASS (serializable), name);
|
||||
if (pspec == NULL)
|
||||
g_warning ("Unknown property %s for type %s\n", name, g_type_name_from_instance ((GTypeInstance *)serializable));
|
||||
return pspec;
|
||||
}
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
|
||||
#include <gio/gio.h>
|
||||
#include <libsoup/soup.h>
|
||||
#include <json-glib/json-glib.h>
|
||||
|
||||
G_BEGIN_DECLS
|
||||
|
||||
@@ -68,6 +69,9 @@ gboolean builder_download_uri (const char *url,
|
||||
SoupSession *soup_session,
|
||||
GError **error);
|
||||
|
||||
GParamSpec * builder_serializable_find_property_with_error (JsonSerializable *serializable,
|
||||
const char *name);
|
||||
|
||||
G_END_DECLS
|
||||
|
||||
#endif /* __BUILDER_UTILS_H__ */
|
||||
|
||||
Reference in New Issue
Block a user