Keep track of what source/device we were testing and continue from there on error. When we get an error and we destroy the source and try to recreate it we might end up in an infinite loop trying to recreate the same source so we have to keep track of which device or source we were testing and continue from there so we can avoid the infinite loop and try a different source/device every time there's an error.
Keep track of what source/device we were testing and continue from there on error.
When we get an error and we destroy the source and try to recreate it
we might end up in an infinite loop trying to recreate the same source
so we have to keep track of which device or source we were testing and
continue from there so we can avoid the infinite loop and try a different
source/device every time there's an error.

ahmedammar/skype_farsight2,ahmedammar/skype_farsight2,ahmedammar/skype_farsight2,ahmedammar/skype_farsight2