修复文件传输模式时不等待导致传图失败;修复BMP文件长度未计入调色板长度
This commit is contained in:
parent
09916baf44
commit
1c779d9067
|
@ -498,7 +498,7 @@ std::string scanned_img::file_header(SANE_ImageType type, float resolution, twai
|
|||
{
|
||||
BITMAPFILEHEADER fh = { 0 };
|
||||
fh.bfType = MAKEWORD('B', 'M');
|
||||
fh.bfSize = sizeof(fh) + bih.biSizeImage + sizeof(bih);
|
||||
fh.bfSize = sizeof(fh) + bih.biSizeImage + sizeof(bih) + pal_size;
|
||||
fh.bfOffBits = sizeof(fh) + sizeof(bih) + pal_size;
|
||||
|
||||
h = std::string((char*)&fh, sizeof(fh));
|
||||
|
|
|
@ -1110,7 +1110,7 @@ Twpp::Result huagao_ds::pendingXfersStopFeeder(const Identity& origin, PendingXf
|
|||
Twpp::Result huagao_ds::imageFileXferGet(const Twpp::Identity& origin)
|
||||
{
|
||||
// assume that the file format has set before start-scanning, so we write-down the image content to file directly here ...
|
||||
if (!scanner_.get() || scanner_->get_scanned_images() == 0)
|
||||
if (!scanner_.get() || scanner_->get_scanned_images(-1) == 0)
|
||||
return seqError();
|
||||
|
||||
IScanImg *img = scanner_->take_first_image(TWAIN_XFER_File);
|
||||
|
@ -1177,7 +1177,7 @@ Twpp::Result huagao_ds::imageFileXferGet(const Twpp::Identity& origin)
|
|||
conv.dst.data_len = target.length();
|
||||
MoveFileA(target.c_str(), file.c_str());
|
||||
if(scanner_->convert_image(&conv) != SCANNER_ERR_OK)
|
||||
ret = { ReturnCode::Failure, ConditionCode::FileWriteError };
|
||||
ret = { ReturnCode::Failure, ConditionCode::OperationError };
|
||||
DeleteFileA(file.c_str());
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue