FIRST-Tech-Challenge / FtcRobotController

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Version 9.1 - Bug in VisionPortalImpl.close()

25wangj opened this issue · comments

When VisionPortalImpl tries to remove cameraMonitorViewId from viewsInUse, it uses ArrayList.remove(int) instead of ArrayList.remove(Object). This causes an IndexOutOfBoundsError. Line 663 of VisionPortalImpl should change from:

viewsInUse.remove(cameraMonitorViewId);

to

viewsInUse.remove(Integer.valueOf(cameraMonitorViewId));

If other people think this is correct I will submit a PR.

Ooops. Yes, that is correct. Unfortunately, the deploy model of the SDK does not facilitate the acceptance of PRs against this repo.

A workaround for now would be to (a) stop streaming but not actually close the portal if you're doing it to save resources, or (b) simply allow the built-in clean up to run its course.

NB: this was missed in testing because the usage of close() in the samples did not trigger a crash display, which in and of itself is a bug. That is, this bug was masked in the samples by the presence of another bug.

This was fixed in v9.2