summaryrefslogtreecommitdiffstats
path: root/src/qtwaylandscanner
diff options
context:
space:
mode:
authorJan Arne Petersen <jan.petersen@kdab.com>2013-08-21 11:40:47 +0200
committerAndy Nichols <andy.nichols@digia.com>2013-08-22 13:26:35 +0200
commitc088945eb3a8b1ab6e81f33ce88b10f7a67792d0 (patch)
tree00ff600fde3ba71118b49c55bf8165357a3ce778 /src/qtwaylandscanner
parentc2ac72aa3831d5aa479e567c799714a637d68647 (diff)
Do not create unused code with qtwaylandscanner
We do not use foreign wl_resource handles in the server code anymore. Remove support for it from the generated code in qtwaylandscanner. Change-Id: Id45235ceb4282db02858749c0bef04278be7322d Reviewed-by: Andy Nichols <andy.nichols@digia.com>
Diffstat (limited to 'src/qtwaylandscanner')
-rw-r--r--src/qtwaylandscanner/qtwaylandscanner.cpp64
1 files changed, 11 insertions, 53 deletions
diff --git a/src/qtwaylandscanner/qtwaylandscanner.cpp b/src/qtwaylandscanner/qtwaylandscanner.cpp
index a3553bbd7..9bb4e36e7 100644
--- a/src/qtwaylandscanner/qtwaylandscanner.cpp
+++ b/src/qtwaylandscanner/qtwaylandscanner.cpp
@@ -371,9 +371,9 @@ void process(QXmlStreamReader &xml)
printf("\n");
printf("#ifndef WAYLAND_VERSION_CHECK\n");
printf("#define WAYLAND_VERSION_CHECK(major, minor, micro) \\\n");
- printf(" (WAYLAND_VERSION_MAJOR > (major)) || \\\n");
+ printf(" ((WAYLAND_VERSION_MAJOR > (major)) || \\\n");
printf(" (WAYLAND_VERSION_MAJOR == (major) && WAYLAND_VERSION_MINOR > (minor)) || \\\n");
- printf(" (WAYLAND_VERSION_MAJOR == (major) && WAYLAND_VERSION_MINOR == (minor) && WAYLAND_VERSION_MICRO >= (micro))\n");
+ printf(" (WAYLAND_VERSION_MAJOR == (major) && WAYLAND_VERSION_MINOR == (minor) && WAYLAND_VERSION_MICRO >= (micro)))\n");
printf("#endif\n");
printf("\n");
@@ -394,7 +394,6 @@ void process(QXmlStreamReader &xml)
printf(" class %s\n {\n", interfaceName);
printf(" public:\n");
- printf(" %s(struct ::wl_client *client, struct ::wl_resource *resource, int id);\n", interfaceName);
printf(" %s(struct ::wl_client *client, int id);\n", interfaceName);
printf(" %s(struct ::wl_display *display);\n", interfaceName);
printf(" %s();\n", interfaceName);
@@ -415,7 +414,6 @@ void process(QXmlStreamReader &xml)
printf(" static Resource *fromResource(struct ::wl_resource *resource) { return static_cast<Resource *>(resource->data); }\n");
printf(" };\n");
printf("\n");
- printf(" void init(struct ::wl_client *client, struct ::wl_resource *resource, int id);\n");
printf(" void init(struct ::wl_client *client, int id);\n");
printf(" void init(struct ::wl_display *display);\n");
printf("\n");
@@ -470,7 +468,7 @@ void process(QXmlStreamReader &xml)
printf(" static void bind_func(struct ::wl_client *client, void *data, uint32_t version, uint32_t id);\n");
printf(" static void destroy_func(struct ::wl_resource *client_resource);\n");
printf("\n");
- printf(" Resource *bind(struct ::wl_client *client, struct ::wl_resource *resource, uint32_t id);\n");
+ printf(" Resource *bind(struct ::wl_client *client, uint32_t id);\n");
if (hasRequests) {
printf("\n");
@@ -488,7 +486,6 @@ void process(QXmlStreamReader &xml)
printf("\n");
printf(" Resource *m_resource;\n");
- printf(" bool m_ownResource;\n");
printf(" struct ::wl_list m_resource_list;\n");
printf(" struct ::wl_global *m_global;\n");
printf(" };\n");
@@ -528,23 +525,8 @@ void process(QXmlStreamReader &xml)
QByteArray stripped = stripInterfaceName(interface.name);
const char *interfaceNameStripped = stripped.constData();
- printf(" %s::%s(struct ::wl_client *client, struct ::wl_resource *resource, int id)\n", interfaceName, interfaceName);
- printf(" : m_resource(0)\n");
- printf(" , m_ownResource(false)\n");
- printf(" , m_global(0)\n");
- printf(" {\n");
- printf(" wl_list_init(&m_resource_list);\n");
- printf(" init(client, resource, id);\n");
- printf(" }\n");
- printf("\n");
-
printf(" %s::%s(struct ::wl_client *client, int id)\n", interfaceName, interfaceName);
printf(" : m_resource(0)\n");
- printf("#if WAYLAND_VERSION_CHECK(1, 2, 0)\n");
- printf(" , m_ownResource(false)\n");
- printf("#else\n");
- printf(" , m_ownResource(true)\n");
- printf("#endif\n");
printf(" , m_global(0)\n");
printf(" {\n");
printf(" wl_list_init(&m_resource_list);\n");
@@ -554,11 +536,6 @@ void process(QXmlStreamReader &xml)
printf(" %s::%s(struct ::wl_display *display)\n", interfaceName, interfaceName);
printf(" : m_resource(0)\n");
- printf("#if WAYLAND_VERSION_CHECK(1, 2, 0)\n");
- printf(" , m_ownResource(false)\n");
- printf("#else\n");
- printf(" , m_ownResource(true)\n");
- printf("#endif\n");
printf(" , m_global(0)\n");
printf(" {\n");
printf(" wl_list_init(&m_resource_list);\n");
@@ -568,11 +545,6 @@ void process(QXmlStreamReader &xml)
printf(" %s::%s()\n", interfaceName, interfaceName);
printf(" : m_resource(0)\n");
- printf("#if WAYLAND_VERSION_CHECK(1, 2, 0)\n");
- printf(" , m_ownResource(false)\n");
- printf("#else\n");
- printf(" , m_ownResource(true)\n");
- printf("#endif\n");
printf(" , m_global(0)\n");
printf(" {\n");
printf(" wl_list_init(&m_resource_list);\n");
@@ -584,15 +556,9 @@ void process(QXmlStreamReader &xml)
printf(" }\n");
printf("\n");
- printf(" void %s::init(struct ::wl_client *client, struct ::wl_resource *resource, int id)\n", interfaceName);
- printf(" {\n");
- printf(" m_resource = bind(client, resource, id);\n");
- printf(" }\n");
- printf("\n");
-
printf(" void %s::init(struct ::wl_client *client, int id)\n", interfaceName);
printf(" {\n");
- printf(" m_resource = bind(client, 0, id);\n");
+ printf(" m_resource = bind(client, id);\n");
printf(" }\n");
printf("\n");
@@ -604,7 +570,7 @@ void process(QXmlStreamReader &xml)
printf(" %s::Resource *%s::add(struct wl_list *resource_list, struct ::wl_client *client, int id)\n", interfaceName, interfaceName);
printf(" {\n");
- printf(" Resource *resource = bind(client, 0, id);\n");
+ printf(" Resource *resource = bind(client, id);\n");
printf(" wl_list_insert(resource_list, &resource->handle->link);\n");
printf(" return resource;\n");
printf(" }\n");
@@ -635,7 +601,7 @@ void process(QXmlStreamReader &xml)
printf(" void %s::bind_func(struct ::wl_client *client, void *data, uint32_t version, uint32_t id)\n", interfaceName);
printf(" {\n");
printf(" Q_UNUSED(version);\n");
- printf(" static_cast<%s *>(data)->bind(client, 0, id);\n", interfaceName);
+ printf(" static_cast<%s *>(data)->bind(client, id);\n", interfaceName);
printf(" }\n");
printf("\n");
@@ -643,13 +609,13 @@ void process(QXmlStreamReader &xml)
printf(" {\n");
printf(" Resource *resource = Resource::fromResource(client_resource);\n");
printf(" %s *that = resource->%s;\n", interfaceName, interfaceNameStripped);
- printf(" bool ownResource = that->m_ownResource;\n");
printf(" that->%s_destroy_resource(resource);\n", interfaceNameStripped);
printf(" if (client_resource->link.next)\n");
printf(" wl_list_remove(&client_resource->link);\n");
printf(" delete resource;\n");
- printf(" if (ownResource)\n");
- printf(" free(client_resource);\n");
+ printf("#if !WAYLAND_VERSION_CHECK(1, 2, 0)\n");
+ printf(" free(client_resource);\n");
+ printf("#endif\n");
printf(" }\n");
printf("\n");
@@ -657,20 +623,12 @@ void process(QXmlStreamReader &xml)
QByteArray interfaceMember = hasRequests ? "&m_" + interface.name + "_interface" : QByteArray("0");
- printf(" %s::Resource *%s::bind(struct ::wl_client *client, struct ::wl_resource *handle, uint32_t id)\n", interfaceName, interfaceName);
+ printf(" %s::Resource *%s::bind(struct ::wl_client *client, uint32_t id)\n", interfaceName, interfaceName);
printf(" {\n");
printf(" Resource *resource = %s_allocate();\n", interfaceNameStripped);
printf(" resource->%s = this;\n", interfaceNameStripped);
printf("\n");
- printf(" if (handle) {\n");
- printf(" handle->object.id = id;\n");
- printf(" handle->object.interface = &::%s_interface;\n", interfaceName);
- printf(" handle->object.implementation = (void (**)(void))%s;\n", interfaceMember.constData());
- printf(" handle->data = resource;\n");
- printf(" wl_client_add_resource(client, handle);\n");
- printf(" } else {\n");
- printf(" handle = wl_client_add_object(client, &::%s_interface, %s, id, resource);\n", interfaceName, interfaceMember.constData());
- printf(" }\n");
+ printf(" struct ::wl_resource *handle = wl_client_add_object(client, &::%s_interface, %s, id, resource);\n", interfaceName, interfaceMember.constData());
printf("\n");
printf(" handle->destroy = destroy_func;\n");
printf(" resource->handle = handle;\n");