Fix 'request(0)' issue in Scan

#1904 didn't all cases.
If a user requests X (X > 1) from scan in onStart, scan can simply request (X-1). In such case, `excessive` will be false.