charon-nm: Fix building list of DNS/MDNS servers with libnm
g_variant_builder_add() creates a new GVariant using g_variant_new() and
then adds it to the builder. Passing a GVariant probably adds the
pointer to the array, not the value. I think an alternative fix would
be to use "@u" as type string for the g_variant_builder_add() call, then
the already allocated GVariant is adopted.
Fixes: 9a71b7219c ("charon-nm: Port to libnm")
This commit is contained in:
@@ -65,8 +65,7 @@ static GVariant* handler_to_variant(nm_handler_t *handler,
|
||||
enumerator = handler->create_enumerator(handler, type);
|
||||
while (enumerator->enumerate(enumerator, &chunk))
|
||||
{
|
||||
g_variant_builder_add (&builder, "u",
|
||||
g_variant_new_uint32 (*(uint32_t*)chunk.ptr));
|
||||
g_variant_builder_add (&builder, "u", *(uint32_t*)chunk.ptr);
|
||||
}
|
||||
enumerator->destroy(enumerator);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user