If a new object id arrives ensure that there is an empty array entry
created, otherwise we might get out of sync for new ids if object isn't
created by interface implementation.
closure->args[i] = id;
*id = p;
- object = wl_map_lookup(objects, *p);
- if (object != NULL) {
- printf("not a new object (%d), "
+ if (wl_map_reserve_new(objects, *p) < 0) {
+ printf("not a valid new object id (%d), "
"message %s(%s)\n",
*p, message->name, message->signature);
errno = EINVAL;
goto err;
}
+
p++;
break;
case 'a':