Extending EntityFieldQuery's method finishQuery doesn't work as supposed
I think it's because you're not returning anything from the function.

The code for the base finishQuery() function returns at the very least an empty array; at the moment your function isn't doing that.

The fix might be as simple as changing the last line to:

return parent::finishQuery($select_query, $id_key);