Where error 4806 comes from
CopyBuffer returned -1 or fewer values than requested because the handle, buffer index, calculation state, history, or requested range was not ready or valid. The numeric value is listed in the official runtime error table, which is separate from MetaEditor compilation errors and trade server return codes.
Reset the last-error state before the suspected call, save its direct return value, and read GetLastError immediately afterward. This produces a causal log instead of a stale code.
