diff --git a/adb_client.c b/adb_client.c index 22d3c1c..b946dff 100644 --- a/adb_client.c +++ b/adb_client.c @@ -134,10 +134,11 @@ static void handle_open_frame(adb_client_t *client, apacket *p) { /* OPEN(local-id, 0, "destination") */ if (p->msg.arg0 == 0 || p->msg.arg1 != 0) { + adb_hal_apacket_release(client, p); return; } - name[p->msg.data_length > 0 ? p->msg.data_length - 1 : 0] = 0; + name[p->msg.data_length] = 0; svc = adb_service_open(client, name, p); if(svc == NULL) { if (p->msg.arg1 != 0) {