I don't think it's necessary to duplicate the string. fh_error() will only print it, so unless strlen(s) is shorter than 14, it's fine to print it from 14th character onwards.
Free output_vector if it's not used.
Replace signed int with unsigned to avoid signed/unsigned integer comparison.