[PATCH] server: fix new id printing in closure debug on x86

Arnaud Vrac avrac at freebox.fr
Thu Oct 25 05:05:39 PDT 2012


---
 src/connection.c     |    4 +---
 src/wayland-server.c |    4 ++--
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/src/connection.c b/src/connection.c
index 141875e..ed2666b 100644
--- a/src/connection.c
+++ b/src/connection.c
@@ -1015,10 +1015,8 @@ wl_closure_print(struct wl_closure *closure, struct wl_object *target, int send)
 				(closure->message->types[i - 2]) ?
 				 closure->message->types[i - 2]->name :
 				  "[unknown]");
-			if (send && value->new_id != 0)
+			if (value->new_id != 0)
 				fprintf(stderr, "%u", value->new_id);
-			else if (!send && value->object != NULL)
-				fprintf(stderr, "%u", value->object->id);
 			else
 				fprintf(stderr, "nil");
 			break;
diff --git a/src/wayland-server.c b/src/wayland-server.c
index 38ceb56..de67081 100644
--- a/src/wayland-server.c
+++ b/src/wayland-server.c
@@ -288,11 +288,11 @@ wl_client_connection_data(int fd, uint32_t mask, void *data)
 			break;
 		}
 
+		deref_new_objects(closure);
+
 		if (wl_debug)
 			wl_closure_print(closure, object, false);
 
-		deref_new_objects(closure);
-
 		wl_closure_invoke(closure, object,
 				  object->implementation[opcode], client);
 
-- 
1.7.10.4



More information about the wayland-devel mailing list