If the function was invoked as part of an expression, then it returned more than one value. Otherwise the number of returned variables was different from the number of receiving variables.
Check that the correct function was called. Review the logic of the native C function, especially the values returned by it, to ensure that it always returns the expected number of values.