The defaultprocessor is called as
[failed,f,s] = feval(cds.curve_defaultprocressor,x,v,s).
x and v are the point on the curve and it's tangent vector. The argument s is only supplied if the point is a singular point, in that case the defaultprocessor may also add some data to the s.data field. If for some reason the default processor fails it should set failed to 1. This will result in a reduction of the stepsize and a retry which should solve the problem. Any information that is to be preserved, should be put in f. f must be a column vector and must be of equal size for every call to the default processor.