ddc: Fix cleaning up handles when we are redetecting screens
We were just cleaning up the list handle but never closing them. This would normally be "just a leak" if it wasn't that also ddc will fail on opening a handle that is already open which would invalidate all the handles. This would result in losing access to the ddc displays.
This closes them before cleaning up the list so this doesn't happen anymore.