Fix creating new objects (with id == 0)

Change-Id: I2a6740d5e1a4367d2980e3fb17617c2f1cb95041
Reviewed-by: Andrew Knight <andrew.knight@digia.com>
Reviewed-by: Jørgen Lind <jorgen.lind@digia.com>
This commit is contained in:
Jan Arne Petersen 2013-09-25 13:26:28 +02:00 committed by Jørgen Lind
parent 7debd1b369
commit 3683b4c420

View File

@ -622,7 +622,7 @@ void process(QXmlStreamReader &xml)
printf(" Resource *resource = %s_allocate();\n", interfaceNameStripped);
printf(" resource->%s = this;\n", interfaceNameStripped);
printf("\n");
printf(" struct ::wl_resource *handle = wl_client_add_object(client, &::%s_interface, %s, id, resource);\n", interfaceName, interfaceMember.constData());
printf(" struct ::wl_resource *handle = id != 0 ? wl_client_add_object(client, &::%s_interface, %s, id, resource) : wl_client_new_object(client, &::%s_interface, %s, resource);\n", interfaceName, interfaceMember.constData(), interfaceName, interfaceMember.constData());
printf("\n");
printf(" handle->destroy = destroy_func;\n");
printf(" resource->handle = handle;\n");