The good thing about opensource software is that the critical bugs will eventually gets fixed and if they are not fixed its source code is available and its so vital for you then you can take up the front seat and fix those bugs and become the new maintainer. This does not happen in closed source software unless you have lots and lots of resources the bug fixing process is very slow and if the software abandoned then those bugs will never get fixed. and you have to reverse engineer it to do it.