Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Some scanners (e.g. the Fujitsu ScanSnap S1500) scan both sides of a document in a single pass.
The result is that the one operation on a duplex scanner can result in 2 images, if the scanned document is in fact 2-sided. Each image may have on or multiple frames depending on the
Format
, just like in simplex.Right now, the
ReadImage
function calls*Conn.Cancel()
every time*Conn.ReadImage
is invoked. This is safe for a simplex scanner-- but for a duplex scanner, it cancels the operation, losing the second image created by the second side of the document. The result is that each call to*Conn.ReadImage
returns only the front side of each document.This diff fixes the problem. It is only necessary to call
*Conn.Cancel
if an error was encountered (in which case it is acceptable that the second side is lost). This way,*Conn.ReadImage
can be invoked multiple times; once for the front, and once for the back (if any).