no need for init to NULL I guess. Does haptic_open init arg with smth in case of error?

However it would be nice to have a warning.