graphics/epsonscan2: Update 6.6.40.0 => 6.7.70.0

Old version crashes on 15.0-CURRENT amd64.

Also improve port: fix dependencies, add default option AVAHI.

PR:		284127
Approved by:	J.R. Oldroyd <fbsd@opal.com>
Tested by:	rhurlin
MFH:		2025Q1
This commit is contained in:
Daniel Tameling 2025-02-10 22:40:37 +03:00 committed by Vladimir Druzenko
parent 8a24d190eb
commit 345e28cb1c
56 changed files with 576 additions and 269 deletions

View file

@ -1,8 +1,7 @@
PORTNAME= epsonscan2
DISTVERSION= 6.6.40.0
PORTREVISION= 11
DISTVERSION= 6.7.70.0
CATEGORIES= graphics
MASTER_SITES= https://support.epson.net/linux/src/scanner/epsonscan2/
MASTER_SITES= https://download3.ebz.epson.net/dsc/f/03/00/16/14/37/7577ee65efdad48ee2d2f38d9eda75418e490552/
DISTNAME= ${PORTNAME}-${PORTVERSION}-1.src
MAINTAINER= fbsd@opal.com
@ -14,24 +13,10 @@ LICENSE_FILE= ${WRKSRC}/COPYING
BUILD_DEPENDS= sane-config:graphics/sane-backends
LIB_DEPENDS= libboost_serialization.so:devel/boost-libs \
libdouble-conversion.so:devel/double-conversion \
libfreetype.so:print/freetype2 \
libglib-2.0.so:devel/glib20 \
libGL.so:graphics/libglvnd \
libgraphite2.so:graphics/graphite2 \
libicuuc.so:devel/icu \
libiconv.so:converters/libiconv \
libintl.so:devel/gettext-runtime \
libharfbuzz.so:print/harfbuzz \
libpcre.so:devel/pcre \
libpcre2-16.so:devel/pcre2 \
libpng.so:graphics/png \
libtiff.so:graphics/tiff \
libzstd.so:archivers/zstd
RUN_DEPENDS= avahi-browse:net/avahi-app
libtiff.so:graphics/tiff
USES= cmake gettext-runtime gnome jpeg localbase qt:5 xorg
USE_GNOME= glib20
USES= cmake jpeg localbase qt:5 xorg
USE_LDCONFIG= ${PREFIX}/lib/epsonscan2
USE_QT= buildtools:build core gui qmake:build widgets
USE_XORG= x11 xau xcb xdmcp
@ -47,6 +32,14 @@ SUB_FILES= pkg-message \
WRKSRC= ${WRKDIR}/${PORTNAME}-${PORTVERSION}-1
OPTIONS_DEFINE= AVAHI
OPTIONS_DEFAULT= AVAHI
AVAHI_DESC= Use avahi to find scanners
AVAHI_RUN_DEPENDS= avahi-browse:net/avahi-app
pre-configure:
${RM} ${WRKSRC}/CMakeCache.txt
post-install:
${RM} -rf ${STAGEDIR}${DOCSDIR}
${MV} ${STAGEDIR}${DOCSDIR}-${EPSON_VERSION}-1 ${STAGEDIR}${DOCSDIR}

View file

@ -1,3 +1,3 @@
TIMESTAMP = 1642131410
SHA256 (epsonscan2-6.6.40.0-1.src.tar.gz) = 07aa21eab09e945cadddcbef102caa1e42390ab52cc49a2c00e911e3a3340923
SIZE (epsonscan2-6.6.40.0-1.src.tar.gz) = 2289979
TIMESTAMP = 1739148296
SHA256 (epsonscan2-6.7.70.0-1.src.tar.gz) = e141e66e4cd74c06eef0baa163f4cc498c3be4a5db82851c914a1b7f2c50967e
SIZE (epsonscan2-6.7.70.0-1.src.tar.gz) = 56828993

View file

@ -1,14 +1,14 @@
--- CMakeLists.txt.orig 2021-11-25 00:57:03 UTC
--- CMakeLists.txt.orig 2024-09-12 07:10:44 UTC
+++ CMakeLists.txt
@@ -18,7 +18,6 @@
# along with this package. If not, see <http://www.gnu.org/licenses/>.
@@ -17,7 +17,6 @@ project (epsonscan2)
# CMakeLists.txt -- template and derived ESC/I ESC/I-2 protocol commands
project (epsonscan2)
-set (CMAKE_INSTALL_PREFIX "/usr")
cmake_minimum_required (VERSION 2.8.12.2)
include(GNUInstallDirs)
@@ -55,6 +54,14 @@ message(" Boost_INCLUDE_DIRS: ${Boost_INCLUDE_DIRS}")
@@ -54,6 +53,14 @@ message(" Boost_LIBRARY_DIRS: ${Boost_LIBRARY_DIRS}")
message(" Boost_LIBRARIES: ${Boost_LIBRARIES}")
message(" Boost_LIBRARY_DIRS: ${Boost_LIBRARY_DIRS}")
@ -23,7 +23,7 @@
##############################
#### Dependents package ######
@@ -87,7 +94,11 @@ set(COMMON_ETC_PATH ${CMAKE_INSTALL_FULL_SYSCONFDIR})
@@ -86,7 +93,11 @@ set(EPSON_SETTINGS_PATH $ENV{HOME}/.epsonscan2/)
set(EPSON_WORK_PATH /tmp/epsonWork/)
set(EPSON_SETTINGS_PATH $ENV{HOME}/.epsonscan2/)
@ -35,7 +35,7 @@
set(EPSON_INSTALL_PATH ${CMAKE_INSTALL_FULL_LIBDIR}/epsonscan2/)
set(COMMON_SHARE_PATH ${CMAKE_INSTALL_FULL_DATAROOTDIR})
@@ -114,11 +125,19 @@ add_subdirectory(src)
@@ -113,11 +124,19 @@ install(DIRECTORY Resources DESTINATION ${EPSON_INSTAL
install(DIRECTORY Resources DESTINATION ${EPSON_INSTALL_ROOT}${EPSON_INSTALL_PATH})

View file

@ -1,6 +1,6 @@
--- src/CommonUtility/DbgLog.cpp.orig 2021-11-25 00:56:55 UTC
--- src/CommonUtility/DbgLog.cpp.orig 2024-09-12 07:10:38 UTC
+++ src/CommonUtility/DbgLog.cpp
@@ -34,6 +34,9 @@
@@ -31,6 +31,9 @@
#ifdef __ANDROID__
#include <android/log.h>
#endif
@ -10,7 +10,7 @@
#if TARGET_OS_IPHONE
#include <CoreFoundation/CoreFoundation.h>
#endif
@@ -87,6 +90,8 @@ GetCurrentThreadId(void)
@@ -84,6 +87,8 @@ GetCurrentThreadId(void)
{
#if TARGET_OS_IPHONE
return (DWORD)pthread_mach_thread_np(pthread_self());

View file

@ -1,6 +1,6 @@
--- src/CommonUtility/utils/ESAnyCastUtils.h.orig 2021-11-25 00:56:55 UTC
--- src/CommonUtility/utils/ESAnyCastUtils.h.orig 2024-09-12 07:10:38 UTC
+++ src/CommonUtility/utils/ESAnyCastUtils.h
@@ -141,7 +141,11 @@ const T* SafeAnyDataCPtr( const ESAny& anyIn )
@@ -138,7 +138,11 @@ T* SafeAnyDataPtr_WithLog( ESAny& anyIn, ES_CHAR_CPTR
template< typename T >
T* SafeAnyDataPtr_WithLog( ESAny& anyIn, ES_CHAR_CPTR lpszFile = __ES_FILE__, const int nLine = __LINE__ )
{
@ -13,7 +13,7 @@
if(anyIn.empty()){
ES_Warning_Log3( __ES_FUNCTION__, lpszFile, nLine, ES_STRING("Boost Any Cast Warning Empty!!"));
} else {
@@ -167,7 +171,11 @@ T* SafeAnyDataPtr_WithLog( ESAny& anyIn, ES_CHAR_CPTR
@@ -164,7 +168,11 @@ const T* SafeAnyDataCPtr_WithLog( const ESAny& anyIn,
template< typename T >
const T* SafeAnyDataCPtr_WithLog( const ESAny& anyIn, ES_CHAR_CPTR lpszFile = __ES_FILE__, const int nLine = __LINE__ )
{

View file

@ -1,6 +1,6 @@
--- src/CommonUtility/utils/ESFile.cpp.orig 2021-11-25 00:56:55 UTC
--- src/CommonUtility/utils/ESFile.cpp.orig 2024-09-12 07:10:38 UTC
+++ src/CommonUtility/utils/ESFile.cpp
@@ -48,6 +48,9 @@ CESFile* CESFile::CreateFileInstanceWithPath(ESString
@@ -45,6 +45,9 @@ CESFile* CESFile::CreateTempFileInstanceWithPrefix( ES
}
}
CESFile* CESFile::CreateTempFileInstanceWithPrefix( ESString strFolder, ESString strPrefix, ES_OPEN_MODE eOpenMode ){

View file

@ -1,6 +1,25 @@
--- src/CommonUtility/utils/PathUtils.cpp.orig 2021-11-25 00:56:55 UTC
--- src/CommonUtility/utils/PathUtils.cpp.orig 2024-09-12 07:10:38 UTC
+++ src/CommonUtility/utils/PathUtils.cpp
@@ -609,7 +609,6 @@ namespace ES_CMN_FUNCS
@@ -49,7 +49,8 @@ BOOL GetTempFileName(ESString DirName, ESString Prefix
BOOL GetTempFileName(ESString DirName, ESString Prefix, LPTSTR TempFile)
{
size_t path_len = DirName.length() + Prefix.length() + strlen("XXXXXX");
- char *buf = (char *)malloc(path_len + 1);
+ // +2 for path separator added in ES_AddBackYen
+ char *buf = (char *)malloc(path_len + 2);
buf[path_len] = 0;
ES_CMN_FUNCS::PATH::ES_AddBackYen(DirName);
strcpy(buf, DirName.c_str());
@@ -61,7 +62,7 @@ BOOL GetTempFileName(ESString DirName, ESString Prefix
return FALSE;
}
FILE* fp = fdopen(fd, "w");
- memcpy(TempFile, buf, path_len+1);
+ memcpy(TempFile, buf, path_len+2);
fclose(fp);
free(buf);
return TRUE;
@@ -606,7 +607,6 @@ namespace ES_CMN_FUNCS
else
{
bResult = TRUE;

View file

@ -1,6 +1,28 @@
--- src/Controller/CMakeLists.txt.orig 2021-11-25 00:56:54 UTC
--- src/Controller/CMakeLists.txt.orig 2024-09-12 07:10:30 UTC
+++ src/Controller/CMakeLists.txt
@@ -171,7 +171,7 @@ target_link_libraries( epsonscan2
@@ -171,21 +171,6 @@ ADD_LIBRARY(epsonscan2 SHARED
../../thirdparty/HaruPDF/hpdf_exdata.c
../../thirdparty/HaruPDF/hpdf_encoder_utf.c
-../../thirdparty/zlib/adler32.c
-../../thirdparty/zlib/crc32.c
-../../thirdparty/zlib/gzclose.c
-../../thirdparty/zlib/gzread.c
-../../thirdparty/zlib/infback.c
-../../thirdparty/zlib/inflate.c
-../../thirdparty/zlib/trees.c
-../../thirdparty/zlib/zutil.c
-../../thirdparty/zlib/compress.c
-../../thirdparty/zlib/deflate.c
-../../thirdparty/zlib/gzlib.c
-../../thirdparty/zlib/gzwrite.c
-../../thirdparty/zlib/inffast.c
-../../thirdparty/zlib/inftrees.c
-../../thirdparty/zlib/uncompr.c
../../thirdparty/sha1/sha1.c
)
@@ -194,7 +179,7 @@ target_link_libraries( epsonscan2
dl
commonutility
${Boost_LIBRARIES}

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/EntryPoints.cpp.orig 2021-11-25 00:56:59 UTC
--- src/Controller/Src/EntryPoints.cpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/EntryPoints.cpp
@@ -346,6 +346,8 @@ SDIError SDIScannerDriver_GetNextTransferEvent(SDIScan
@@ -343,6 +343,8 @@ SDIError SDIScannerDriver_GetNextTransferEvent(SDIScan
}
}
break;

View file

@ -1,12 +1,12 @@
--- src/Controller/Src/FileFormat/FFManager.cpp.orig 2021-11-25 00:56:58 UTC
--- src/Controller/Src/FileFormat/FFManager.cpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/FileFormat/FFManager.cpp
@@ -176,6 +176,9 @@ namespace epsonscan
@@ -180,6 +180,9 @@ namespace epsonscan
return kFKWriterTypePnm;
case kSDIImageFormatBMP:
return kFKWriterTypeBmp;
+ case kSDIImageFormatRaw:
+ case kSDIImageFormatColorJpegMonoPNM:
+ break;
}
return kFKWriterTypeBmp;
case kSDIImageFormatOFD:
return kFKWriterTypeOFD;
}

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/Filter/DTR.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Controller/Src/Filter/DTR.cpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/Filter/DTR.cpp
@@ -26,6 +26,9 @@
@@ -23,6 +23,9 @@
#include <utils/ESFile.h>
#include <ES2Command/ES2CommandAPI.h>
#include <math.h>
@ -10,7 +10,7 @@
namespace epsonscan
{
static const int kMaxBuf = 256;
@@ -409,7 +412,7 @@ ESNumber CustomSkipLevelAsPercent(ESNumber inLevel)
@@ -584,7 +587,7 @@ ESNumber CustomSkipLevelAsPercent(ESNumber inLevel)
dtrExecCommand << " ";
dtrExecCommand << "0";
dtrExecCommand << " ";

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/Filter/ProcOrientation.hpp.orig 2021-11-25 00:56:58 UTC
--- src/Controller/Src/Filter/ProcOrientation.hpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/Filter/ProcOrientation.hpp
@@ -89,6 +89,7 @@ class ProcOrientation : public Filter (private)
@@ -86,6 +86,7 @@ class ProcOrientation : public Filter (private)
}
break;
case kSDIOrientationNone:

View file

@ -1,20 +1,11 @@
--- src/Controller/Src/Filter/Saving.hpp.orig 2022-03-20 15:38:28 UTC
--- src/Controller/Src/Filter/Saving.hpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/Filter/Saving.hpp
@@ -76,8 +76,7 @@ namespace epsonscan
imgFormat = kSDIImageFormatPNM;
}
file = CESFile::CreateTempFileInstanceWithPrefix(ES_CMN_FUNCS::PATH::ES_GetWorkTempPath(), prefixStream.str());
- file->CloseFile();
- if(ffMgr.Write(inDataBuf,
+ if(!file || ffMgr.Write(inDataBuf,
file->GetFileName(),
imgFormat,
imageInfo,
@@ -91,6 +90,7 @@ namespace epsonscan
}
}
filePath_ = file->GetFileName();
+ file->CloseFile();
@@ -107,7 +107,7 @@ namespace epsonscan
if (imgFormat == kSDIImageFormatRaw)
{
file = CESFile::CreateTempFileInstanceWithPrefix(ES_CMN_FUNCS::PATH::ES_GetWorkTempPath(), prefixStream.str(), CESFile::ES_OPEN_MODE_WRITE_PLUS);
- if(file->WriteData(inDataBuf) == false)
+ if(!file || file->WriteData(inDataBuf) == false)
{
delete file;
file = nullptr;
}

View file

@ -0,0 +1,12 @@
--- src/Controller/Src/Finder/Finder.cpp.orig 2024-09-12 07:10:37 UTC
+++ src/Controller/Src/Finder/Finder.cpp
@@ -52,6 +52,9 @@ namespace epsonscan {
}
SDIDeviceInfo* Finder::GetDevicesPointer()
{
+ if (devices_.size() == 0) {
+ return nullptr;
+ }
return &devices_[0];
}
int32_t Finder::GetDevicesCount() const

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/Finder/UsbFinder.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Controller/Src/Finder/UsbFinder.cpp.orig 2024-09-12 07:10:37 UTC
+++ src/Controller/Src/Finder/UsbFinder.cpp
@@ -25,7 +25,11 @@
@@ -22,7 +22,11 @@ extern "C" {
#include "ModelInfo.hpp"
#include "Utility.hpp"
extern "C" {

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/KeysValues/All/Resolution.cpp.orig 2021-11-25 00:56:58 UTC
--- src/Controller/Src/KeysValues/All/Resolution.cpp.orig 2024-09-12 07:10:35 UTC
+++ src/Controller/Src/KeysValues/All/Resolution.cpp
@@ -142,7 +142,7 @@ ESDictionary Resolution::GetSeolutionTable(bool isXRes
@@ -145,7 +145,7 @@ ESDictionary Resolution::GetSeolutionTable(bool isXRes
ES_CMN_FUNCS::JSON::JSONFiletoDictionary(resTablePath, resTable);
}else
{

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/KeysValues/All/ScanHeightMax.cpp.orig 2021-11-25 00:56:58 UTC
--- src/Controller/Src/KeysValues/All/ScanHeightMax.cpp.orig 2024-09-12 07:10:35 UTC
+++ src/Controller/Src/KeysValues/All/ScanHeightMax.cpp
@@ -59,6 +59,8 @@ void ScanHeightMax::GetValue(SDIInt& intVal)
@@ -56,6 +56,8 @@ void ScanHeightMax::GetValue(SDIInt& intVal)
case kSDIFunctionalUnitDocumentFeeder:
intVal = ADFValue();
return;

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/KeysValues/All/ScanWidthMax.cpp.orig 2021-11-25 00:56:58 UTC
--- src/Controller/Src/KeysValues/All/ScanWidthMax.cpp.orig 2024-09-12 07:10:35 UTC
+++ src/Controller/Src/KeysValues/All/ScanWidthMax.cpp
@@ -58,6 +58,8 @@ void ScanWidthMax::GetValue(SDIInt& intVal)
@@ -55,6 +55,8 @@ void ScanWidthMax::GetValue(SDIInt& intVal)
case kSDIFunctionalUnitDocumentFeeder:
intVal = ADFValue();
return;

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/Scanner/Engine.hpp.orig 2021-11-25 00:56:59 UTC
--- src/Controller/Src/Scanner/Engine.hpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/Scanner/Engine.hpp
@@ -357,14 +357,14 @@ namespace epsonscan {
@@ -363,14 +363,14 @@ namespace epsonscan {
void CALLBACK ScannerDidWarmUp( IESScanner* pScanner ) override;
void CALLBACK NetworkScannerDidRequestStartScanning( IESScanner* pScanner ) override;
void CALLBACK NetworkScannerDidRequestStopScanning( IESScanner* pScanner ) override;
@ -19,8 +19,8 @@
+ void CALLBACK NetworkScannerDidTimeout( IESScanner* pScanner ) override;
+ void CALLBACK ScannerIsReservedByHost( IESScanner* pScanner, const ES_CHAR* pszAddress ) override;
+ void CALLBACK ScannerDidPressButton( UInt8 un8ButtonNumber ) override;
+ void CALLBACK ScannerDidRequestStop(IESScanner *pScanner) override;
+ void CALLBACK ScannerDidRequestPushScanConnection(IESScanner *pScanner) override;
+ void CALLBACK ScannerDidRequestStop(IESScanner *pScanner)override;
+ void CALLBACK ScannerDidRequestPushScanConnection(IESScanner *pScanner)override;
+ void CALLBACK ScannerDidNotifyStatusChange(IESScanner *pScanner) override;
};
}

View file

@ -1,6 +1,6 @@
--- src/Controller/Src/Scanner/Scanner.cpp.orig 2021-11-25 00:56:59 UTC
--- src/Controller/Src/Scanner/Scanner.cpp.orig 2024-09-12 07:10:36 UTC
+++ src/Controller/Src/Scanner/Scanner.cpp
@@ -188,7 +188,7 @@ void Scanner::EngineCallBackReceiver(EngineEventType e
@@ -183,7 +183,7 @@ void Scanner::EngineCallBackReceiver(EngineEventType e
error == kSDIErrorDataSend ||
error == kSDIErrorInvalidResponse ||
error == kSDIErrorDeviceFatalError ||
@ -9,7 +9,7 @@
{
SDI_TRACE_LOG("communication error occurs");
isOpened_ = false;
@@ -202,13 +202,13 @@ SDIError Scanner::Open()
@@ -197,13 +197,13 @@ SDIError Scanner::Open()
SDIError err;
if (engine_) {
err = engine_->Open();

View file

@ -1,6 +1,6 @@
--- src/ES2Command/Linux/CMakeLists.txt.orig 2021-11-25 00:56:54 UTC
--- src/ES2Command/Linux/CMakeLists.txt.orig 2024-09-12 07:10:30 UTC
+++ src/ES2Command/Linux/CMakeLists.txt
@@ -60,7 +60,7 @@ target_link_libraries( es2command
@@ -78,7 +78,7 @@ target_link_libraries( es2command
dl
commonutility
${Boost_LIBRARIES}

View file

@ -1,6 +1,6 @@
--- src/ES2Command/Src/Command/ESCI2/ESCI2Accessor.h.orig 2021-11-25 00:56:55 UTC
--- src/ES2Command/Src/Command/ESCI2/ESCI2Accessor.h.orig 2024-09-12 07:10:31 UTC
+++ src/ES2Command/Src/Command/ESCI2/ESCI2Accessor.h
@@ -37,7 +37,7 @@ class CESCI2Accessor : public CESCI2Command (protected
@@ -34,7 +34,7 @@ class CESCI2Accessor : public CESCI2Command (protected
ESErrorCode SetPanelToPushScanReady( BOOL bPushScanReady );
ESErrorCode UnlockAdministratorLock();
ESErrorCode LockAdministratorLock();
@ -9,7 +9,7 @@
BOOL IsScannableDeviceConfig();
ESErrorCode CaptureScanner();
ESErrorCode ReleaseScanner();
@@ -208,7 +208,7 @@ class CESCI2Accessor : public CESCI2Command (protected
@@ -211,7 +211,7 @@ class CESCI2Accessor : public CESCI2Command (protected
ESErrorCode _SetColorMatrix( ES_COLOR_MATRIX& matrix );
ESErrorCode SetColorMatrix( ESFloatArray arColorMatrix );
bool IsSkewCorrectionSupported();
@ -18,21 +18,34 @@
ESErrorCode SetSkewCorrectionEnabled( bool bSkewCorrectionEnabled );
ESAny GetSupportedThreshold();
ESNumber GetThreshold();
@@ -226,7 +226,7 @@ class CESCI2Accessor : public CESCI2Command (protected
ESNumber GetGammaScale();
ESErrorCode SetGammaScale( ESNumber nGammaScale );
@@ -241,7 +241,7 @@ class CESCI2Accessor : public CESCI2Command (protected
virtual bool IsSkipImageEnabled();
virtual ESErrorCode SetSkipImageEnabled( bool nDetectBlankPageLevel );
ESAny GetSupportedBackGroundRemoval();
- ESNumber GetBackGroundRemoval();
+ virtual ESNumber GetBackGroundRemoval() override;
ESErrorCode SetBackGroundRemoval( ESNumber nBackGroundRemoval );
ESAny GetSupportedJPEGQuality();
ESNumber GetJPEGQuality();
@@ -235,7 +235,7 @@ class CESCI2Accessor : public CESCI2Command (protected
ESErrorCode DoAutoFocus(ESFloat* pfOutFocus);
bool IsAutoFocusSupported();
@@ -257,10 +257,10 @@ class CESCI2Accessor : public CESCI2Command (protected
ESQuietMode GetQuietMode();
ESErrorCode SetQuietMode( ESNumber nQuietMode);
bool IsAutoCroppingSupported();
- bool IsAutoCroppingEnabled();
+ virtual bool IsAutoCroppingEnabled() override;
ESErrorCode SetAutoCroppingEnabled( bool bAutoCroppingEnabled );
bool IsAutoCroppingInscribedSupported();
- bool IsAutoCroppingInscribedEnabled();
+ bool IsAutoCroppingInscribedEnabled() override;
ESErrorCode SetAutoCroppingInscribedEnabled( bool bAutoCroppingEnabled );
ESAny GetCroppableResolutions();
ESAny GetSupportedCroppingSizes();
@@ -516,7 +516,7 @@ class CESCI2Accessor : public CESCI2Command (protected
bool IsRetardRollerNearendSupported();
ESNumber GetRetardRollerNearend();
ESAny GetSupportedCapability(const UInt32& key);
- ENUM_ES_HASH_TYPE GetMaintenanceHashType();
+ ENUM_ES_HASH_TYPE GetMaintenanceHashType() override;
private :
template <typename Function>
void ForeachAnyArrayValue(const ESAny &anyValue, Function func) {

View file

@ -0,0 +1,11 @@
--- src/ES2Command/Src/Command/ESCI2/ESCI2Command.h.orig 2024-09-12 07:10:31 UTC
+++ src/ES2Command/Src/Command/ESCI2/ESCI2Command.h
@@ -59,7 +59,7 @@ class CESCI2Command : public CCommandBase (protected)
virtual bool IsFeedTypeADF() = 0;
virtual bool IsAdfLoadSupported() = 0 ;
virtual bool IsAutoCroppingEnabled() = 0;
- virtual bool IsAutoCroppingInscribedEnabled() = 0;
+ virtual bool IsAutoCroppingInscribedEnabled() = 0;
virtual bool IsSkewCorrectionEnabled() =0;
virtual ESNumber GetBackGroundRemoval() = 0;
private:

View file

@ -1,6 +1,17 @@
--- src/ES2Command/Src/Interface/ipc/ipcInterfaceImpl.cpp.orig 2021-11-25 00:56:54 UTC
--- src/ES2Command/Src/Interface/ipc/ipcInterfaceImpl.cpp.orig 2024-09-12 07:10:32 UTC
+++ src/ES2Command/Src/Interface/ipc/ipcInterfaceImpl.cpp
@@ -307,7 +307,7 @@ bool IPCInterfaceImpl::recv_reply(uint32_t* token)
@@ -129,7 +129,9 @@ ESErrorCode IPCInterfaceImpl::Open()
if(!ES_IsExistFile(dat_file)){
FILE *fp;
fp = fopen(dat_file.c_str(),"w");
- fclose(fp);
+ if (fp) {
+ fclose(fp);
+ }
}
interrupt_.reset(new ipc_interrupt(delegate_, dat_file, IPC_SHARED_ID, IPC_SEMAHORE_KEY));
interrupt_->start();
@@ -305,7 +307,7 @@ bool IPCInterfaceImpl::recv_reply(uint32_t* token)
if (placeholder) delete [] placeholder;
if (token) *token = hdr_token(hdr);
if (hdr_error(hdr) || n < 0) {

View file

@ -1,12 +1,12 @@
--- src/ES2Command/Src/Interface/usb/usbInterfaceImpl.cpp.orig 2021-11-25 00:56:54 UTC
--- src/ES2Command/Src/Interface/usb/usbInterfaceImpl.cpp.orig 2024-09-12 07:10:32 UTC
+++ src/ES2Command/Src/Interface/usb/usbInterfaceImpl.cpp
@@ -46,7 +46,8 @@ USBInterfaceImpl::USBInterfaceImpl()
@@ -34,7 +34,8 @@ USBInterfaceImpl::USBInterfaceImpl()
sm_ctx = nullptr;
throw std::runtime_error("unable to initialise USB support");
}
- libusb_set_debug(sm_ctx, 3);
+ // XXX this cannot be left enabled as the debug messages go to stdout which is where the scan image data goes
+ //libusb_set_debug(sm_ctx, 3);
+ // libusb_set_debug(sm_ctx, 3);
}
++sm_nConnectionCount;
}

View file

@ -1,10 +1,9 @@
--- src/ES2Command/Src/Interface/usb/usbInterfaceImpl.h.orig 2021-11-25 00:56:54 UTC
--- src/ES2Command/Src/Interface/usb/usbInterfaceImpl.h.orig 2024-09-12 07:10:32 UTC
+++ src/ES2Command/Src/Interface/usb/usbInterfaceImpl.h
@@ -20,8 +20,11 @@
// usbInterfaceImpl.h -- template and derived ESC/I ESC/I-2 protocol commands
@@ -18,7 +18,11 @@
#pragma once
-
+#if __FreeBSD__
+#include <libusb.h>
+#else
@ -12,4 +11,4 @@
+#endif
#include "../interfaceImpl.h"
#include "../interface.h"
class USBInterfaceImpl : public IInterfaceImpl
#include "CommonUtility/ESCommonTypedef.h"

View file

@ -1,6 +1,6 @@
--- src/ES2Command/Src/Utils/ESAccessor.h.orig 2021-11-25 00:56:55 UTC
--- src/ES2Command/Src/Utils/ESAccessor.h.orig 2024-09-12 07:10:32 UTC
+++ src/ES2Command/Src/Utils/ESAccessor.h
@@ -177,7 +177,7 @@ class CESAccessor{ (protected)
@@ -174,7 +174,7 @@ class CESAccessor{ (protected)
{
}
CSetterFunc(const CSetterFunc& rhs)

View file

@ -1,6 +1,6 @@
--- src/ES2Command/Src/Utils/semaphore.hpp.orig 2021-11-25 00:56:55 UTC
--- src/ES2Command/Src/Utils/semaphore.hpp.orig 2024-09-12 07:10:32 UTC
+++ src/ES2Command/Src/Utils/semaphore.hpp
@@ -23,6 +23,10 @@
@@ -20,6 +20,10 @@
#include<sys/sem.h>
#include <stdexcept>
@ -11,7 +11,7 @@
#if defined(__GNU_LIBRARY__) && !defined(_SEM_SEMUN_UNDEFINED)
#else
union semun {
@@ -88,9 +92,26 @@ class semaphore (public)
@@ -85,9 +89,26 @@ class semaphore (public)
}
int wait(int timeout_s)
{
@ -38,7 +38,7 @@
operations[0].sem_flg = SEM_UNDO;
struct timespec time{};
time.tv_sec = timeout_s;
@@ -98,6 +119,7 @@ class semaphore (public)
@@ -95,6 +116,7 @@ class semaphore (public)
return errno;
}
return 0;
@ -46,7 +46,7 @@
}
void lock()
{
@@ -128,6 +150,14 @@ class semaphore (public)
@@ -125,6 +147,14 @@ class semaphore (public)
}
int wait_and_lock(int timeout_s)
{
@ -61,7 +61,7 @@
sembuf operations[2];
operations[0].sem_num = 0;
operations[0].sem_op = WAIT;
@@ -141,6 +171,7 @@ class semaphore (public)
@@ -138,6 +168,7 @@ class semaphore (public)
return errno;
}
return 0;

View file

@ -1,6 +1,6 @@
--- src/ES2FileFormat/Header/IO/FKDestination.h.orig 2021-11-25 00:56:57 UTC
--- src/ES2FileFormat/Header/IO/FKDestination.h.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Header/IO/FKDestination.h
@@ -33,12 +33,12 @@ class CFKDestination : public IFKDestination (private)
@@ -30,12 +30,12 @@ class CFKDestination : public IFKDestination (public)
public:
CFKDestination();
~CFKDestination();
@ -12,11 +12,11 @@
- ES_CMN_FUNCS::BUFFER::IESBuffer& GetSource();
- void SetDelegate(IFKDestinationDelegate* piDelegate){
+ ES_CMN_FUNCS::BUFFER::IESBuffer& GetSource() override;
+ void SetDelegate(IFKDestinationDelegate* piDelegate) override {
+ void SetDelegate(IFKDestinationDelegate* piDelegate) override{
m_pcDelegate = piDelegate ;
}
void SetUserData(const ESImageInfo& dictImageInfo){
@@ -50,10 +50,10 @@ class CFKDestination : public IFKDestination (private)
@@ -47,10 +47,10 @@ class CFKDestination : public IFKDestination (public)
virtual void SetUserDataAsJson(ES_CHAR_CPTR pszUserDataAsJson) override;
virtual void GetUserDataAsJson(IESResultString& pszUserDataAsJson) override;
static IFKDestination* CreateAndInitInstanceWithType( FKDestinationType eType, ES_CMN_FUNCS::BUFFER::IESBuffer& cSource );
@ -26,7 +26,7 @@
+ void NotifyDidEndReceivingForImageInfo( ES_CHAR_CPTR pszImageInfoAsJson ) override;
void NotifyReceiveImageData( ES_CMN_FUNCS::BUFFER::IESBuffer& cData, ES_CHAR_CPTR pszImageInfoAsJson ) override;
- void Destroy(){
+ void Destroy() override {
+ void Destroy() override{
delete this;
}
};

View file

@ -1,6 +1,6 @@
--- src/ES2FileFormat/Header/IO/FKSource.h.orig 2021-11-25 00:56:57 UTC
--- src/ES2FileFormat/Header/IO/FKSource.h.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Header/IO/FKSource.h
@@ -40,7 +40,7 @@ class CFKSource : public IFKSource (public)
@@ -37,7 +37,7 @@ class CFKSource : public IFKSource (public)
{
return m_bFull;
}

View file

@ -1,6 +1,6 @@
--- src/ES2FileFormat/Header/Reader/FKReader.h.orig 2021-11-25 00:56:57 UTC
--- src/ES2FileFormat/Header/Reader/FKReader.h.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Header/Reader/FKReader.h
@@ -42,21 +42,21 @@ class CFKReader : public IFKReader (public)
@@ -39,21 +39,21 @@ class CFKReader : public IFKReader (public)
m_nValidImageHeight = nHeight;
m_bReadOnlyValidData = bReadOnlyValidData;
}
@ -28,7 +28,7 @@
+ virtual BOOL OpenReaderWithOptionAsJson( ES_CHAR_CPTR pszOptionAsJson, ENUM_FK_ERROR_CODE& eError ) override = 0;
+ virtual BOOL AppendSourceToReader( IFKSource* pcSource, ENUM_FK_ERROR_CODE& eError ) override = 0;
+ virtual BOOL CloseReaderWithOptionAsJson( ES_CHAR_CPTR pszOptionAsJson, ENUM_FK_ERROR_CODE& eError ) override = 0;
+ void Destroy() override {
+ void Destroy() override{
delete this;
}
};

View file

@ -1,11 +1,11 @@
--- src/ES2FileFormat/Source/PnmUtil/FKPnmUtil.cpp.orig 2022-02-17 18:20:53 UTC
--- src/ES2FileFormat/Source/PnmUtil/FKPnmUtil.cpp.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Source/PnmUtil/FKPnmUtil.cpp
@@ -137,7 +137,7 @@ BOOL CFKPnmEncodeUtil::StartEncodingWithData(IFKDestin
@@ -134,7 +134,7 @@ BOOL CFKPnmEncodeUtil::StartEncodingWithData(IFKDestin
ES_ErrorBailWithAction(m_cData.AllocBuffer(nHeaderSize + 4), BAIL,
this, eError = kFKMemError, ES_STRING("memory alloc error"));
}
- memcpy(m_cData.GetBufferPtr(), m_pnmHeader.c_str(), sizeof(m_pnmHeader.c_str()));
+ memcpy(m_cData.GetBufferPtr(), m_pnmHeader.c_str(), strlen(m_pnmHeader.c_str())+1);
+ memcpy(m_cData.GetBufferPtr(), m_pnmHeader.c_str(), strlen(m_pnmHeader.c_str()));
m_rowBytes = ES_IMAGE_INFO::GetESImageBytesPerRow(imageInfo);
pDest->NotifyDidBeginReceivingForImageInfo(m_strImageJson.c_str());
if (pDest->GetFKDestinationType() == kFKDestinationTypeEmpty){

View file

@ -0,0 +1,22 @@
--- src/ES2FileFormat/Source/TiffUtil/FKTiffEncodeUtil.cpp.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Source/TiffUtil/FKTiffEncodeUtil.cpp
@@ -192,8 +192,8 @@ BAIL:;
BAIL:;
return errorCode == kFKNoError;
}
-BOOL FKTiffEncodeUtil::StartWithPath(ESString& path, ESImageInfo& imageInfo, uint32 compression,
- BOOL appendMode, ESString& iccProfilePath, ENUM_FK_ERROR_CODE& eError,uint32 un32JpegQuality)
+BOOL FKTiffEncodeUtil::StartWithPath(ESString& path, ESImageInfo& imageInfo, uint32_t compression,
+ BOOL appendMode, ESString& iccProfilePath, ENUM_FK_ERROR_CODE& eError,uint32_t un32JpegQuality)
{
eError = kFKNoError;
if (m_bStarted || !OpenOutFileWithPath(&path, appendMode)){
@@ -210,7 +210,7 @@ BOOL FKTiffEncodeUtil::StartWithPath(ESString& path, E
m_nSamplesPerPixel = samplesPerPixel;
m_nBytesPerLine = ES_IMAGE_INFO::GetESImageBytesPerRow(imageInfo);
m_nCompressionType = compression;
- uint32 colorSpace = GetTiffColorSpace(samplesPerPixel, compression);
+ uint32_t colorSpace = GetTiffColorSpace(samplesPerPixel, compression);
if (TIFFSetField(m_pOutFile, TIFFTAG_IMAGEWIDTH, imageWidth) != 1) {
ES_ErrorBailWithAction(FALSE, BAIL, this, eError = kFKTiffSetFieldError, ES_STRING("TIFFSetField TIFFTAG_IMAGEWIDTH fails"));
}

View file

@ -0,0 +1,13 @@
--- src/ES2FileFormat/Source/TiffUtil/FKTiffEncodeUtil.h.orig 2024-09-12 07:10:33 UTC
+++ src/ES2FileFormat/Source/TiffUtil/FKTiffEncodeUtil.h
@@ -25,8 +25,8 @@ class FKTiffEncodeUtil (public)
public:
FKTiffEncodeUtil();
virtual ~FKTiffEncodeUtil();
- BOOL StartWithPath(ESString& path, ESImageInfo& imageInfo, uint32 compression, BOOL appendMode,
- ESString& iccProfilePath, ENUM_FK_ERROR_CODE& eError,uint32 un32JpegQuality);
+ BOOL StartWithPath(ESString& path, ESImageInfo& imageInfo, uint32_t compression, BOOL appendMode,
+ ESString& iccProfilePath, ENUM_FK_ERROR_CODE& eError,uint32_t un32JpegQuality);
virtual BOOL WriteScanlinesWithData(const ES_CMN_FUNCS::BUFFER::IESBuffer& cData, ENUM_FK_ERROR_CODE& eError);
virtual BOOL FinalizeAndReturnError(ENUM_FK_ERROR_CODE& eError);
protected:

View file

@ -1,6 +1,6 @@
--- src/Platform.cpp.orig 2021-11-25 00:56:59 UTC
--- src/Platform.cpp.orig 2024-09-12 07:10:37 UTC
+++ src/Platform.cpp
@@ -22,6 +22,10 @@
@@ -19,6 +19,10 @@
#include "Platform.h"
#include "CommonUtility/utils/PathUtils.h"
#include <fstream>
@ -11,7 +11,7 @@
#ifndef WIN32
errno_t fopen_s(
FILE** pFile,
@@ -105,7 +109,7 @@ DWORD WaitForSingleObject(
@@ -102,7 +106,7 @@ DWORD ES2WaitForSingleObject(
case THREAD_HANDLE_ID:
{
LPTHREAD_HANDLE hThreadHandle = (LPTHREAD_HANDLE) hHandle;
@ -20,7 +20,7 @@
return WAIT_OBJECT_0;
}
int thread_status = 0;
@@ -121,7 +125,7 @@ DWORD WaitForSingleObject(
@@ -118,7 +122,7 @@ DWORD ES2WaitForSingleObject(
{
intptr_t lRet = (intptr_t)pStatus;
hThreadHandle->dwThreadStatus = (DWORD)lRet;
@ -29,8 +29,8 @@
}
}
while (EBUSY == thread_status);
@@ -180,7 +184,7 @@ BOOL CloseHandle(HANDLE hObject)
WaitForSingleObject(hObject, INFINITE);
@@ -177,7 +181,7 @@ BOOL CloseHandle(HANDLE hObject)
ES2WaitForSingleObject(hObject, INFINITE);
LPTHREAD_HANDLE pThreadHandle = (LPTHREAD_HANDLE)hObject;
pThreadHandle->dwThreadStatus = 0;
- pThreadHandle->threadID = (int)NULL;
@ -38,19 +38,7 @@
#endif
}
break;
@@ -347,7 +351,11 @@ DWORD GetModuleFileName(LPTSTR lpFilename, DWORD buf_s
{
DWORD dwRet = 0;
memset(lpFilename, 0, buf_size);
+#ifdef __FreeBSD__
+ readlink( "/proc/curproc/file", lpFilename, buf_size - 1 );
+#else
readlink( "/proc/self/exe", lpFilename, buf_size - 1 );
+#endif
dwRet = (DWORD)strlen(lpFilename);
return dwRet;
}
@@ -397,14 +405,14 @@ errno_t strcat_s(
@@ -325,14 +329,14 @@ errno_t strcat_s(
}
if (NULL == strSource)
{

View file

@ -1,37 +1,18 @@
--- src/SaneWrapper/backend.cpp.orig 2021-11-25 00:56:59 UTC
--- src/SaneWrapper/backend.cpp.orig 2024-09-12 07:10:44 UTC
+++ src/SaneWrapper/backend.cpp
@@ -220,7 +220,8 @@ sane_open (SANE_String_Const device_name, SANE_Handle
{
return SANE_STATUS_INVAL;
}
- ((Epson_Scanner*)handle)->out_buffer = NULL;
+ // XXX next causes a SEGV on FreeBSD because out_buffer is not yet allocated
+ //((Epson_Scanner*)handle)->out_buffer = NULL;
if (!epson_backend->sane_dev)
{
const SANE_Device **dev = NULL;
@@ -355,6 +356,7 @@ sane_get_parameters (SANE_Handle handle, SANE_Paramete
unsigned int nSize = 100;
unsigned char* tmp_buf = (unsigned char*)::malloc(nSize);
SDIChar* output_path;
@@ -406,6 +406,7 @@ sane_get_parameters (SANE_Handle handle, SANE_Paramete
SANE_TRACE_LOG("--------------sane_get_parameters--------------");
Epson_Scanner *s = (Epson_Scanner *) handle;
SANE_Status status = SANE_STATUS_GOOD;
+ SDIError outError = kSDIErrorNone;
if(tmp_buf){
memset(tmp_buf, 0, nSize);
}else {
@@ -363,7 +365,6 @@ sane_get_parameters (SANE_Handle handle, SANE_Paramete
int width = 0;
int height = 0;
if(s->scan_ready){
@@ -421,7 +422,6 @@ sane_get_parameters (SANE_Handle handle, SANE_Paramete
goto ERROR_2;
}
output_path = (SDIChar*)tmp_buf;
- SDIError outError;
while (true)
{
s->hw->sv->SDIImage_CreatePtr_(&s->outImageData);
s->hw->sv->SDIScannerDriver_GetNextTransferEventPtr_(s->hw->sv->driver,
&outType,
@@ -442,7 +443,7 @@ sane_get_parameters (SANE_Handle handle, SANE_Paramete
}
}else {
status = SANE_STATUS_INVAL;
- fclose(fp);
+ //fclose(fp); // shouldn't try to close file that isn't open!
goto ERROR;
}
if(s->hw->sv->device_data.ColorType.select == kSDIColorTypeMono1){

View file

@ -1,11 +1,12 @@
--- src/SaneWrapper/defines.h.orig 2021-11-25 00:56:59 UTC
--- src/SaneWrapper/defines.h.orig 2024-09-12 07:10:44 UTC
+++ src/SaneWrapper/defines.h
@@ -36,14 +36,30 @@ typedef enum {
@@ -33,14 +33,30 @@ typedef enum {
} bool;
#endif
#include <stdlib.h>
-#define _assert(type,condition) \
+#undef _assert
#define _assert(type,condition) \
+#define _assert(type,condition) \
if (!(condition)) \
{ \
exit (EXIT_FAILURE); \

View file

@ -1,6 +1,15 @@
--- src/SaneWrapper/epsonscan.cpp.orig 2021-11-25 00:56:59 UTC
--- src/SaneWrapper/epsonscan.cpp.orig 2024-09-12 07:10:44 UTC
+++ src/SaneWrapper/epsonscan.cpp
@@ -859,7 +859,7 @@ sane_start (SANE_Handle handle)
@@ -144,7 +144,7 @@ memset(&dev->devInfo, 0, sizeof(SDIDeviceInfo));
char* nameToTok = (char*)malloc(strlen(name) + 1);
strcpy(nameToTok, name);
char* dislayname = strtok(nameToTok, ":");
- char* serialNumber = NULL;;
+ const char* serialNumber = NULL;;
char temp_displayName[50];
bool serialNumberSkipped = false;
memcpy(temp_displayName, dislayname, min(sizeof(temp_displayName), strlen(dislayname) + 1));
@@ -907,7 +907,7 @@ sane_start (SANE_Handle handle)
select_current_doc_size(s, s->hw->sv->device_data);
handle_scan_area (s, (char *) s->hw->cur_doc_size);
}
@ -9,21 +18,21 @@
double max_x = s->hw->sv->device_data.ScanArea.MaxScanAreaWidth.select / 100.0 * s->hw->sv->device_data.Resolution.select;
double max_y = s->hw->sv->device_data.ScanArea.MaxScanAreaHeight.select / 100.0 * s->hw->sv->device_data.Resolution.select;
if(max_x <= s->hw->sv->device_data.ScanArea.ScanAreaWidth.select &&
@@ -1265,7 +1265,7 @@ set_epson_value (Epson_Scanner *s, SANE_Int option, vo
@@ -1359,7 +1359,7 @@ set_epson_value (Epson_Scanner *s, SANE_Int option, vo
gamma_range.min) != SANE_STATUS_GOOD){
return SANE_STATUS_INVAL;
}
- log_call("gamma = %d", value);
+ log_call("gamma = %d", *((SANE_Word *)value));
- SANE_TRACE_LOG("gamma = %d", value);
+ SANE_TRACE_LOG("gamma = %d", *((SANE_Word *)value));
handle_gamma (s, (SANE_UNFIX(*((SANE_Int *) value))*10));
break;
case OPT_MODE:
@@ -1285,7 +1285,7 @@ set_epson_value (Epson_Scanner *s, SANE_Int option, vo
@@ -1379,7 +1379,7 @@ set_epson_value (Epson_Scanner *s, SANE_Int option, vo
brightness_range.min) != SANE_STATUS_GOOD){
return SANE_STATUS_INVAL;
}
- log_call("brightne = %d", value);
+ log_call("brightne = %d", *((SANE_Word *)value));
- SANE_TRACE_LOG("brightne = %d", value);
+ SANE_TRACE_LOG("brightne = %d", *((SANE_Word *)value));
handle_brightness (s, *((SANE_Word *) value));
break;
case OPT_CONTRAST:

View file

@ -1,6 +1,6 @@
--- src/ScanSDK/Src/SDK/supervisor.cpp.orig 2021-11-25 00:56:59 UTC
--- src/ScanSDK/Src/SDK/supervisor.cpp.orig 2024-09-12 07:10:37 UTC
+++ src/ScanSDK/Src/SDK/supervisor.cpp
@@ -282,7 +282,7 @@ bool Supervisor::DeviceInfoResolve(SDIDeviceInfo* devI
@@ -284,7 +284,7 @@ bool Supervisor::CheckScanningError(SDIError outError)
}
bool Supervisor::CheckScanningError(SDIError outError)
{
@ -9,7 +9,7 @@
if(outError != kSDIErrorNone){
m_LastError = outError;
return false;
@@ -2541,7 +2541,7 @@ bool Supervisor::Set_All_Value(void)
@@ -2627,7 +2627,7 @@ bool Supervisor::Set_All_Value(void)
}
{
SDIInt current;
@ -18,7 +18,7 @@
current = device_data.ScanArea.PaperEndDetection.select;
}else {
current = false;
@@ -3487,7 +3487,7 @@ bool Supervisor::Set_Exclusion_Value(void)
@@ -3607,7 +3607,7 @@ bool Supervisor::Set_Exclusion_Value(void)
}
{
SDIInt current;

View file

@ -1,6 +1,6 @@
--- src/Standalone/CMakeLists.txt.orig 2021-11-25 00:56:54 UTC
--- src/Standalone/CMakeLists.txt.orig 2024-09-12 07:10:30 UTC
+++ src/Standalone/CMakeLists.txt
@@ -142,5 +142,5 @@ target_link_libraries(es2standalone ${QT_LIBRARIES}
@@ -167,5 +167,5 @@ QT5_USE_MODULES(es2standalone Widgets)
)
QT5_USE_MODULES(es2standalone Widgets)

View file

@ -1,6 +1,6 @@
--- src/Standalone/commandlinemode.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/commandlinemode.cpp.orig 2024-09-12 07:10:40 UTC
+++ src/Standalone/commandlinemode.cpp
@@ -538,7 +538,7 @@ void CommandLineMode::ErrorMessage(SDIError outError)
@@ -535,7 +535,7 @@ void CommandLineMode::ErrorMessage(SDIError outError)
}else if(outError == kSDIErrorPaperProtect){
error_message = "ERROR : A paper jam has occurred. See the documentation for instructions on removing your originals.";
}else if(outError == kSDIErrorDeviceInBusy){
@ -9,12 +9,12 @@
}else if(outError == kSDIErrorCoverOpen){
error_message = "ERROR : ADF or ADF cover is open. Close it and reload the originals.";
}else if(outError == kSDIErrorTrayClose){
@@ -559,6 +559,8 @@ void CommandLineMode::ErrorMessage(SDIError outError)
@@ -556,6 +556,8 @@ void CommandLineMode::ErrorMessage(SDIError outError)
error_message = "ERROR : Device is not found...";
}else if(outError == kSDIErrorUserAuthEnabled){
error_message = "ERROR : Scanning from Epson Scan 2 is not allowed because the authentication function for the scanner is enabled.";
+ }else if(outError == kSDIErrorInvalidResponse){
+ error_message = "ERROR : kSDIErrorInvalidResponse";
}else {
error_message = "ERROR : An unexpected error occurred. Epson Scan 2 will close.";
}
}else if(outError == kSDIErrorPaperRemoveError){
error_message = "ERROR : Remove the original.";
}else if(outError == kSDIErrorSkewDetectError){

View file

@ -1,6 +1,6 @@
--- src/Standalone/custommessagebox.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/custommessagebox.cpp.orig 2024-09-12 07:10:40 UTC
+++ src/Standalone/custommessagebox.cpp
@@ -153,7 +153,7 @@ void CustomMessageBox::ErrorMessageBox(Supervisor* sv,
@@ -150,7 +150,7 @@ void CustomMessageBox::ErrorMessageBox(Supervisor* sv,
type = Critical;
error_message = TranslationString::GetString().translation_str.E_ENV_001;
sv->scanning_status = ERROR;

View file

@ -1,6 +1,6 @@
--- src/Standalone/detectionareamindoublespinbox.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/detectionareamindoublespinbox.cpp.orig 2024-09-12 07:10:40 UTC
+++ src/Standalone/detectionareamindoublespinbox.cpp
@@ -100,7 +100,7 @@ bool DetectionAreaMinDoubleSpinBox::isUnit_inchi(void)
@@ -97,7 +97,7 @@ bool DetectionAreaMinDoubleSpinBox::isUnit_inchi(void)
Units units = config.config_para.units;
if(units == unit_inchi){
return true;

View file

@ -1,10 +1,6 @@
--- src/Standalone/deviceconnectiondialog.cpp.orig 2022-02-17 18:43:44 UTC
--- src/Standalone/deviceconnectiondialog.cpp.orig 2024-09-12 07:10:42 UTC
+++ src/Standalone/deviceconnectiondialog.cpp
@@ -110,11 +110,10 @@ void DetectAlertGlassDirty(SDIScannerDriver* driver, S
#endif
QString arg2(TranslationString::GetString().translation_str.A_UI_006);
QString arg3(TranslationString::GetString().translation_str.VERSION_003);
- QString executable = exeapp + " " + arg1 + " " + "\"" + arg2 + "\"" + " " + arg3 + " " + "A_UI_006" + " " + std::to_string( 1).c_str();
@@ -111,7 +111,7 @@ void DetectAlertGlassDirty(SDIScannerDriver* driver, S
dir_name = dir_name + "A_UI_006";
if(!tmpdir.exists(dir_name.c_str())){
if(!tmpdir.exists(dir_name.c_str())) tmpdir.mkdir(dir_name.c_str());
@ -13,11 +9,7 @@
qCritical() << "Cannot start program";
}
}
@@ -129,11 +128,10 @@ void DetectAlertGlassDirty(SDIScannerDriver* driver, S
#endif
QString arg2(TranslationString::GetString().translation_str.A_UNIT_008);
QString arg3(TranslationString::GetString().translation_str.VERSION_003);
- QString executable = exeapp + " " + arg1 + " " + "\"" + arg2 + "\"" + " " + arg3 + " " + "A_UNIT_008" + " " + std::to_string( 2).c_str();
@@ -130,7 +130,7 @@ void DetectAlertGlassDirty(SDIScannerDriver* driver, S
dir_name = dir_name + "A_UNIT_008";
if(!tmpdir.exists(dir_name.c_str())){
if(!tmpdir.exists(dir_name.c_str())) tmpdir.mkdir(dir_name.c_str());

View file

@ -1,18 +1,21 @@
--- src/Standalone/documentsize.cpp.orig 2021-11-25 00:56:55 UTC
--- src/Standalone/documentsize.cpp.orig 2024-09-12 07:10:41 UTC
+++ src/Standalone/documentsize.cpp
@@ -333,9 +333,9 @@ void Document_Size::CreateComboBoxToolTip(DocumentSize
@@ -395,11 +395,11 @@ void Document_Size::CreateComboBoxToolTip(DocumentSize
message = "";
}else if(current_item == Auto_Detect_long){
message = "";
- }else if(current_item == OPTIONS){
+ }else if(current_item == (DocumentSize)OPTIONS){
message = "";
- }else if(current_item == SETTING){
+ }else if(current_item == (DocumentSize)SETTING){
message = "";
- }else if(current_item == USER_DEFINE){
+ }else if(current_item == (DocumentSize)USER_DEFINE){
create_custom_size(&message);
}else if(current_item == Maximum_Size){
create_maximum_size(&message, scan_area_para);
@@ -774,7 +774,7 @@ void Document_Size::StandardSizeToPixel()
@@ -903,7 +903,7 @@ void Document_Size::StandardSizeToPixel()
}else if(current_item == Maximum_Size){
current_pixel_x = max_pixel_x / 100 * this->base_resolution;
current_pixel_y = max_pixel_y / 100 * this->base_resolution;

View file

@ -1,6 +1,6 @@
--- src/Standalone/foldercomb.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Standalone/foldercomb.cpp.orig 2024-09-12 07:10:38 UTC
+++ src/Standalone/foldercomb.cpp
@@ -31,7 +31,7 @@ void FolderComb::initialize(SCANPARA dev_data, CustomM
@@ -28,7 +28,7 @@ void FolderComb::initialize(SCANPARA dev_data, CustomM
changed = true;
current_item = (Folder)dev_data.Folder;
user_define_path = dev_data.UserDefinePath.c_str();
@ -9,7 +9,7 @@
QString qStr = user_define_path;
this->setToolTip(qStr);
}
@@ -117,7 +117,7 @@ void FolderComb::item_event(int value, SCANPARA* path_
@@ -114,7 +114,7 @@ void FolderComb::item_event(int value, SCANPARA* path_
this->setToolTip(qStr);
}else if(select_item == OPTIONS){
this->item_event_options();

View file

@ -1,8 +1,8 @@
--- src/Standalone/imageformatsettingscombobox.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/imageformatsettingscombobox.cpp.orig 2024-09-12 07:10:40 UTC
+++ src/Standalone/imageformatsettingscombobox.cpp
@@ -68,7 +68,7 @@ void ImageFormatSettingsCombobox::add_item(ImageFormat
}else if(img_format_list[i] == ImageFormatColorJpegMonoRaw){
this->insertItem(i, TranslationString::GetString().translation_str.FILESAVESETTING_007, ImageFormatColorJpegMonoRaw);
}else if(img_format_list[i] == ImageFormatOFD){
this->insertItem(i, "OFD", ImageFormatOFD);
i++;
- }else if(img_format_list[i] == OPTIONS){
+ }else if(img_format_list[i] == (ImageFormat)OPTIONS){

View file

@ -1,6 +1,6 @@
--- src/Standalone/initdeviceselectcombobox.cpp.orig 2022-01-21 22:27:00 UTC
--- src/Standalone/initdeviceselectcombobox.cpp.orig 2024-09-12 07:10:43 UTC
+++ src/Standalone/initdeviceselectcombobox.cpp
@@ -80,7 +80,7 @@ void InitDeviceSelectCombobox::add_manu_ip()
@@ -77,7 +77,7 @@ void InitDeviceSelectCombobox::add_manu_ip()
int i = this->count();
int dev_index = DeviceList::device_list.size();
while(i <= list_size){

View file

@ -1,6 +1,6 @@
--- src/Standalone/lengthdoublespinbox.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Standalone/lengthdoublespinbox.cpp.orig 2024-09-12 07:10:42 UTC
+++ src/Standalone/lengthdoublespinbox.cpp
@@ -127,7 +127,7 @@ bool LengthDoubleSpinBox::isUnit_inchi(void)
@@ -124,7 +124,7 @@ bool LengthDoubleSpinBox::isUnit_inchi(void)
Units units = config.config_para.units;
if(units == unit_inchi){
return true;

View file

@ -1,6 +1,6 @@
--- src/Standalone/mainwindow.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Standalone/mainwindow.cpp.orig 2024-09-12 07:10:39 UTC
+++ src/Standalone/mainwindow.cpp
@@ -682,7 +682,7 @@ bool MainWindow::SelectionRestrictions(int value){
@@ -730,7 +730,7 @@ bool MainWindow::SelectionRestrictions(int value){
limit_resolution = 300;
}
if(obj == ui->Resolution_comb){
@ -9,7 +9,7 @@
return UserDefineSizeRestrictions();
}else if(ui->Document_size_comb->current_item == Auto_Detect_long){
if(ui->Resolution_comb->currentText().toInt() > limit_resolution){
@@ -1234,7 +1234,7 @@ bool MainWindow::CheckAutoFunctionalUnit(bool isPrevie
@@ -1436,7 +1436,7 @@ bool MainWindow::CheckAutoFunctionalUnit(bool isPrevie
if(this->m_viewPreviewWindow){
if(isPreview && sv->device_data.FunctionalUnit_Auto){
if(sv->GetPaperLoadedStatus()){
@ -18,7 +18,7 @@
sv->device_data.FunctionalUnit.select = kSDIFunctionalUnitDocumentFeeder;
}else {
if(m_messageBox->CreateSelectableMessageBox(TranslationString::GetString().translation_str.C_UI_005, Warning)){
@@ -1247,7 +1247,7 @@ bool MainWindow::CheckAutoFunctionalUnit(bool isPrevie
@@ -1449,7 +1449,7 @@ bool MainWindow::CheckAutoFunctionalUnit(bool isPrevie
}
}
}else {
@ -27,7 +27,7 @@
sv->device_data.FunctionalUnit.select = kSDIFunctionalUnitFlatbed;
}else {
if(m_messageBox->CreateSelectableMessageBox(TranslationString::GetString().translation_str.C_UI_005, Warning)){
@@ -1332,7 +1332,7 @@ bool MainWindow::CheckBeforeScan()
@@ -1545,7 +1545,7 @@ bool MainWindow::CheckBeforeScan(bool isPreview)
}
}
if(!sv->device_data.DNShow_LongPaperWarning_dialog){

View file

@ -1,6 +1,6 @@
--- src/Standalone/mainwindow.ui.orig 2022-02-17 18:30:36 UTC
--- src/Standalone/mainwindow.ui.orig 2024-09-12 07:10:30 UTC
+++ src/Standalone/mainwindow.ui
@@ -1653,7 +1653,7 @@
@@ -1701,7 +1701,7 @@
<number>0</number>
</property>
<widget class="QWidget" name="page">
@ -9,7 +9,7 @@
<property name="geometry">
<rect>
<x>13</x>
@@ -1719,7 +1719,7 @@
@@ -1767,7 +1767,7 @@
</widget>
</widget>
<widget class="QWidget" name="page_2">
@ -18,7 +18,7 @@
<property name="geometry">
<rect>
<x>11</x>
@@ -1786,7 +1786,7 @@
@@ -1834,7 +1834,7 @@
</item>
</layout>
</widget>
@ -27,7 +27,7 @@
<property name="geometry">
<rect>
<x>10</x>
@@ -1856,7 +1856,7 @@
@@ -1904,7 +1904,7 @@
</item>
</layout>
</widget>

View file

@ -1,6 +1,6 @@
--- src/Standalone/networkdeviceselectdialog.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/networkdeviceselectdialog.cpp.orig 2024-09-12 07:10:41 UTC
+++ src/Standalone/networkdeviceselectdialog.cpp
@@ -183,7 +183,7 @@ bool NetworkDeviceSelectDialog::UpdateNetworkSettingFi
@@ -180,7 +180,7 @@ bool NetworkDeviceSelectDialog::UpdateNetworkSettingFi
ES_Trace_Log(this, "Exist network setting file");
#else
ES_Trace_Log(this, "Exist file : .epsonscan2/Network/epsonscan2.conf");

View file

@ -1,7 +1,7 @@
--- src/Standalone/rotateimage.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/rotateimage.cpp.orig 2024-09-12 07:10:40 UTC
+++ src/Standalone/rotateimage.cpp
@@ -28,34 +28,34 @@ RotateImage::RotateImage(ColorType type)
void RotateImage::Rotate(std::string image_path, int angle, ImageFormat format, bool multiTiffEnabled)
@@ -25,37 +25,37 @@ void RotateImage::Rotate(std::string image_path, int a
void RotateImage::Rotate(std::string image_path, int angle, ImageFormat format, bool multiTiffEnabled, int OFDEnabled)
{
std::string file_format;
- if (format == kSDIImageFormatJPEG)
@ -32,6 +32,10 @@
+ }else if (format == (ImageFormat)kSDIImageFormatPNM && multiTiffEnabled)
{
file_format = "PPM";
- }else if (format == kSDIImageFormatPNM && OFDEnabled)
+ }else if (format == (ImageFormat)kSDIImageFormatPNM && OFDEnabled)
{
file_format = "OFD";
}
QImage srcImg(image_path.c_str());
QPoint center = srcImg.rect().center();

View file

@ -1,29 +1,29 @@
--- src/Standalone/supervisor.cpp.orig 2021-11-25 00:56:57 UTC
--- src/Standalone/supervisor.cpp.orig 2024-09-12 07:10:42 UTC
+++ src/Standalone/supervisor.cpp
@@ -270,7 +270,7 @@ bool Supervisor::DeviceInfoResolve(SDIDeviceInfo* devI
@@ -297,7 +297,7 @@ bool Supervisor::CheckScanningError(SDIError outError)
}
bool Supervisor::CheckScanningError(SDIError outError)
{
- if(outEventType == 10 ){
+ if(outEventType == (SDITransferEventType)10 ){
if(outError != kSDIErrorNone){
m_LastError = outError;
return false;
@@ -2632,7 +2632,7 @@ bool Supervisor::Set_All_Value(void)
- if (outEventType == 10)
+ if (outEventType == (SDITransferEventType)10)
{
if (outError != kSDIErrorNone)
{
@@ -3127,7 +3127,7 @@ bool Supervisor::Set_All_Value(void)
}
{
SDIInt current;
- if(device_data.ScanArea.FixedSize == USER_DEFINE){
+ if(device_data.ScanArea.FixedSize == (DocumentSize)USER_DEFINE){
- if (device_data.ScanArea.FixedSize == USER_DEFINE)
+ if (device_data.ScanArea.FixedSize == (DocumentSize)USER_DEFINE)
{
current = device_data.ScanArea.PaperEndDetection.select;
}else {
current = false;
@@ -3712,7 +3712,7 @@ bool Supervisor::Set_Exclusion_Value(void)
}
@@ -4352,7 +4352,7 @@ bool Supervisor::Set_Exclusion_Value(void)
}
{
SDIInt current;
- if(device_data.ScanArea.FixedSize == USER_DEFINE){
+ if(device_data.ScanArea.FixedSize == (DocumentSize)USER_DEFINE){
- if (device_data.ScanArea.FixedSize == USER_DEFINE)
+ if (device_data.ScanArea.FixedSize == (DocumentSize)USER_DEFINE)
{
current = device_data.ScanArea.PaperEndDetection.select;
}else {
current = false;
}

View file

@ -1,6 +1,6 @@
--- src/Standalone/widthdoublespinbox.cpp.orig 2021-11-25 00:56:56 UTC
--- src/Standalone/widthdoublespinbox.cpp.orig 2024-09-12 07:10:41 UTC
+++ src/Standalone/widthdoublespinbox.cpp
@@ -116,7 +116,7 @@ bool WidthDoubleSpinBox::isUnit_inchi(void)
@@ -113,7 +113,7 @@ bool WidthDoubleSpinBox::isUnit_inchi(void)
Units units = config.config_para.units;
if(units == unit_inchi){
return true;

View file

@ -13,6 +13,7 @@ lib/epsonscan2/Resources/Icons/btn_preview_close.png
lib/epsonscan2/Resources/Icons/btn_preview_mark_height.png
lib/epsonscan2/Resources/Icons/btn_preview_mark_width.png
lib/epsonscan2/Resources/Icons/escan2_app.ico
lib/epsonscan2/Resources/Icons/indicator_focus_adjusted@2x.png
lib/epsonscan2/Resources/Icons/update4.png
lib/epsonscan2/Resources/Models/ES003F/ConvertTable.json
lib/epsonscan2/Resources/Models/ES003F/JP/ES003F.json
@ -861,6 +862,7 @@ lib/epsonscan2/Resources/Models/ES0227/US/ES0227.json
lib/epsonscan2/Resources/Models/ES0227/WW/ES0227.json
lib/epsonscan2/Resources/Models/ES0228/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0228/ES0228.dti
lib/epsonscan2/Resources/Models/ES0228/JP/ES0228.json
lib/epsonscan2/Resources/Models/ES0228/US/ES0228.json
lib/epsonscan2/Resources/Models/ES0228/WW/ES0228.json
lib/epsonscan2/Resources/Models/ES0229/ALL/ES0229.json
@ -1019,12 +1021,16 @@ lib/epsonscan2/Resources/Models/ES025A/ES025A.dti
lib/epsonscan2/Resources/Models/ES025B/ALL/ES025B.json
lib/epsonscan2/Resources/Models/ES025B/ConvertTable.json
lib/epsonscan2/Resources/Models/ES025B/ES025B.dti
lib/epsonscan2/Resources/Models/ES025B/JP/ES025B.json
lib/epsonscan2/Resources/Models/ES025B/WW/ES025B.json
lib/epsonscan2/Resources/Models/ES025C/ALL/ES025C.json
lib/epsonscan2/Resources/Models/ES025C/ConvertTable.json
lib/epsonscan2/Resources/Models/ES025C/ES025C.dti
lib/epsonscan2/Resources/Models/ES025D/ALL/ES025D.json
lib/epsonscan2/Resources/Models/ES025D/ConvertTable.json
lib/epsonscan2/Resources/Models/ES025D/ES025D.dti
lib/epsonscan2/Resources/Models/ES025D/JP/ES025D.json
lib/epsonscan2/Resources/Models/ES025D/WW/ES025D.json
lib/epsonscan2/Resources/Models/ES025E/ALL/ES025E.json
lib/epsonscan2/Resources/Models/ES025E/ConvertTable.json
lib/epsonscan2/Resources/Models/ES025E/ES025E.dti
@ -1045,6 +1051,190 @@ lib/epsonscan2/Resources/Models/ES0263/ES0263.dti
lib/epsonscan2/Resources/Models/ES0264/ALL/ES0264.json
lib/epsonscan2/Resources/Models/ES0264/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0264/ES0264.dti
lib/epsonscan2/Resources/Models/ES0265/ALL/ES0265.json
lib/epsonscan2/Resources/Models/ES0265/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0265/ES0265.dti
lib/epsonscan2/Resources/Models/ES0266/ALL/ES0266.json
lib/epsonscan2/Resources/Models/ES0266/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0266/ES0266.dti
lib/epsonscan2/Resources/Models/ES0267/ALL/ES0267.json
lib/epsonscan2/Resources/Models/ES0267/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0267/ES0267.dti
lib/epsonscan2/Resources/Models/ES0268/ALL/ES0268.json
lib/epsonscan2/Resources/Models/ES0268/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0268/ES0268.dti
lib/epsonscan2/Resources/Models/ES0269/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0269/ES0269.dti
lib/epsonscan2/Resources/Models/ES0269/JP/ES0269.json
lib/epsonscan2/Resources/Models/ES0269/WW/ES0269.json
lib/epsonscan2/Resources/Models/ES027A/ALL/ES027A.json
lib/epsonscan2/Resources/Models/ES027A/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027A/ES027A.dti
lib/epsonscan2/Resources/Models/ES027B/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027B/ES027B.dti
lib/epsonscan2/Resources/Models/ES027B/JP/ES027B.json
lib/epsonscan2/Resources/Models/ES027B/WW/ES027B.json
lib/epsonscan2/Resources/Models/ES027C/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027C/ES027C.dti
lib/epsonscan2/Resources/Models/ES027C/US/ES027C.json
lib/epsonscan2/Resources/Models/ES027C/WW/ES027C.json
lib/epsonscan2/Resources/Models/ES027D/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027D/ES027D.dti
lib/epsonscan2/Resources/Models/ES027D/US/ES027D.json
lib/epsonscan2/Resources/Models/ES027D/WW/ES027D.json
lib/epsonscan2/Resources/Models/ES027E/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027E/ES027E.dti
lib/epsonscan2/Resources/Models/ES027E/US/ES027E.json
lib/epsonscan2/Resources/Models/ES027E/WW/ES027E.json
lib/epsonscan2/Resources/Models/ES027F/ALL/ES027F.json
lib/epsonscan2/Resources/Models/ES027F/ConvertTable.json
lib/epsonscan2/Resources/Models/ES027F/ES027F.dti
lib/epsonscan2/Resources/Models/ES0280/ALL/ES0280.json
lib/epsonscan2/Resources/Models/ES0280/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0280/ES0280.dti
lib/epsonscan2/Resources/Models/ES0281/ALL/ES0281.json
lib/epsonscan2/Resources/Models/ES0281/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0281/ES0281.dti
lib/epsonscan2/Resources/Models/ES0282/ALL/ES0282.json
lib/epsonscan2/Resources/Models/ES0282/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0282/ES0282.dti
lib/epsonscan2/Resources/Models/ES0283/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0283/ES0283.dti
lib/epsonscan2/Resources/Models/ES0283/JP/ES0283.json
lib/epsonscan2/Resources/Models/ES0283/WW/ES0283.json
lib/epsonscan2/Resources/Models/ES0284/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0284/ES0284.dti
lib/epsonscan2/Resources/Models/ES0284/JP/ES0284.json
lib/epsonscan2/Resources/Models/ES0284/WW/ES0284.json
lib/epsonscan2/Resources/Models/ES0285/ALL/ES0285.json
lib/epsonscan2/Resources/Models/ES0285/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0285/ES0285.dti
lib/epsonscan2/Resources/Models/ES0286/ALL/ES0286.json
lib/epsonscan2/Resources/Models/ES0286/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0286/ES0286.dti
lib/epsonscan2/Resources/Models/ES0287/ALL/ES0287.json
lib/epsonscan2/Resources/Models/ES0287/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0287/ES0287.dti
lib/epsonscan2/Resources/Models/ES0288/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0288/ES0288.dti
lib/epsonscan2/Resources/Models/ES0288/JP/ES0288.json
lib/epsonscan2/Resources/Models/ES0288/WW/ES0288.json
lib/epsonscan2/Resources/Models/ES0289/ALL/ES0289.json
lib/epsonscan2/Resources/Models/ES0289/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0289/ES0289.dti
lib/epsonscan2/Resources/Models/ES028A/ALL/ES028A.json
lib/epsonscan2/Resources/Models/ES028A/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028A/ES028A.dti
lib/epsonscan2/Resources/Models/ES028B/ALL/ES028B.json
lib/epsonscan2/Resources/Models/ES028B/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028B/ES028B.dti
lib/epsonscan2/Resources/Models/ES028C/ALL/ES028C.json
lib/epsonscan2/Resources/Models/ES028C/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028C/ES028C.dti
lib/epsonscan2/Resources/Models/ES028D/ALL/ES028D.json
lib/epsonscan2/Resources/Models/ES028D/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028D/ES028D.dti
lib/epsonscan2/Resources/Models/ES028E/ALL/ES028E.json
lib/epsonscan2/Resources/Models/ES028E/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028E/ES028E.dti
lib/epsonscan2/Resources/Models/ES028F/ConvertTable.json
lib/epsonscan2/Resources/Models/ES028F/ES028F.dti
lib/epsonscan2/Resources/Models/ES028F/JP/ES028F.json
lib/epsonscan2/Resources/Models/ES028F/WW/ES028F.json
lib/epsonscan2/Resources/Models/ES0290/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0290/ES0290.dti
lib/epsonscan2/Resources/Models/ES0290/JP/ES0290.json
lib/epsonscan2/Resources/Models/ES0290/WW/ES0290.json
lib/epsonscan2/Resources/Models/ES0291/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0291/ES0291.dti
lib/epsonscan2/Resources/Models/ES0291/JP/ES0291.json
lib/epsonscan2/Resources/Models/ES0291/WW/ES0291.json
lib/epsonscan2/Resources/Models/ES0292/ALL/ES0292.json
lib/epsonscan2/Resources/Models/ES0292/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0292/ES0292.dti
lib/epsonscan2/Resources/Models/ES0293/ALL/ES0293.json
lib/epsonscan2/Resources/Models/ES0293/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0293/ES0293.dti
lib/epsonscan2/Resources/Models/ES0294/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0294/ES0294.dti
lib/epsonscan2/Resources/Models/ES0294/US/ES0294.json
lib/epsonscan2/Resources/Models/ES0294/WW/ES0294.json
lib/epsonscan2/Resources/Models/ES0295/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0295/ES0295.dti
lib/epsonscan2/Resources/Models/ES0295/US/ES0295.json
lib/epsonscan2/Resources/Models/ES0295/WW/ES0295.json
lib/epsonscan2/Resources/Models/ES0296/ALL/ES0296.json
lib/epsonscan2/Resources/Models/ES0296/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0296/ES0296.dti
lib/epsonscan2/Resources/Models/ES0297/ALL/ES0297.json
lib/epsonscan2/Resources/Models/ES0297/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0297/ES0297.dti
lib/epsonscan2/Resources/Models/ES0298/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0298/ES0298.dti
lib/epsonscan2/Resources/Models/ES0298/JP/ES0298.json
lib/epsonscan2/Resources/Models/ES0298/WW/ES0298.json
lib/epsonscan2/Resources/Models/ES0299/ConvertTable.json
lib/epsonscan2/Resources/Models/ES0299/ES0299.dti
lib/epsonscan2/Resources/Models/ES0299/US/ES0299.json
lib/epsonscan2/Resources/Models/ES0299/WW/ES0299.json
lib/epsonscan2/Resources/Models/ES029A/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029A/ES029A.dti
lib/epsonscan2/Resources/Models/ES029A/JP/ES029A.json
lib/epsonscan2/Resources/Models/ES029A/US/ES029A.json
lib/epsonscan2/Resources/Models/ES029A/WW/ES029A.json
lib/epsonscan2/Resources/Models/ES029B/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029B/ES029B.dti
lib/epsonscan2/Resources/Models/ES029B/US/ES029B.json
lib/epsonscan2/Resources/Models/ES029B/WW/ES029B.json
lib/epsonscan2/Resources/Models/ES029C/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029C/ES029C.dti
lib/epsonscan2/Resources/Models/ES029C/JP/ES029C.json
lib/epsonscan2/Resources/Models/ES029C/US/ES029C.json
lib/epsonscan2/Resources/Models/ES029C/WW/ES029C.json
lib/epsonscan2/Resources/Models/ES029D/ALL/ES029D.json
lib/epsonscan2/Resources/Models/ES029D/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029D/ES029D.dti
lib/epsonscan2/Resources/Models/ES029E/ALL/ES029E.json
lib/epsonscan2/Resources/Models/ES029E/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029E/ES029E.dti
lib/epsonscan2/Resources/Models/ES029E/ES029E.imp2
lib/epsonscan2/Resources/Models/ES029F/ALL/ES029F.json
lib/epsonscan2/Resources/Models/ES029F/ConvertTable.json
lib/epsonscan2/Resources/Models/ES029F/ES029F.dti
lib/epsonscan2/Resources/Models/ES029F/ES029F.imp2
lib/epsonscan2/Resources/Models/ES02A0/ALL/ES02A0.json
lib/epsonscan2/Resources/Models/ES02A0/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A0/ES02A0.dti
lib/epsonscan2/Resources/Models/ES02A1/ALL/ES02A1.json
lib/epsonscan2/Resources/Models/ES02A1/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A1/ES02A1.dti
lib/epsonscan2/Resources/Models/ES02A2/ALL/ES02A2.json
lib/epsonscan2/Resources/Models/ES02A2/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A2/ES02A2.dti
lib/epsonscan2/Resources/Models/ES02A3/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A3/ES02A3.dti
lib/epsonscan2/Resources/Models/ES02A3/JP/ES02A3.json
lib/epsonscan2/Resources/Models/ES02A3/US/ES02A3.json
lib/epsonscan2/Resources/Models/ES02A4/ALL/ES02A4.json
lib/epsonscan2/Resources/Models/ES02A4/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A4/ES02A4.dti
lib/epsonscan2/Resources/Models/ES02A5/ALL/ES02A5.json
lib/epsonscan2/Resources/Models/ES02A5/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A5/ES02A5.dti
lib/epsonscan2/Resources/Models/ES02A6/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A6/ES02A6.dti
lib/epsonscan2/Resources/Models/ES02A6/US/ES02A6.json
lib/epsonscan2/Resources/Models/ES02A6/WW/ES02A6.json
lib/epsonscan2/Resources/Models/ES02A7/ALL/ES02A7.json
lib/epsonscan2/Resources/Models/ES02A7/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A7/ES02A7.dti
lib/epsonscan2/Resources/Models/ES02A8/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A8/ES02A8.dti
lib/epsonscan2/Resources/Models/ES02A8/JP/ES02A8.json
lib/epsonscan2/Resources/Models/ES02A8/WW/ES02A8.json
lib/epsonscan2/Resources/Models/ES02A9/ALL/ES02A9.json
lib/epsonscan2/Resources/Models/ES02A9/ConvertTable.json
lib/epsonscan2/Resources/Models/ES02A9/ES02A9.dti
lib/epsonscan2/Resources/Models/ESA001/ALL/ESA001.json
lib/epsonscan2/Resources/Models/ESA001/ConvertTable.json
lib/epsonscan2/Resources/Models/ESA001/ESA001.dti
@ -1052,6 +1242,7 @@ lib/epsonscan2/Resources/Models/ESA002/ALL/ESA002.json
lib/epsonscan2/Resources/Models/ESA002/ConvertTable.json
lib/epsonscan2/Resources/Models/ESA002/ESA002.dti
lib/epsonscan2/Resources/Models/ModelInfo.json
lib/epsonscan2/Resources/Models/epsonscan2.rules
lib/epsonscan2/Resources/Tables/ClipConst/ESClipConst0000.json
lib/epsonscan2/Resources/Tables/ClipConst/ESClipConst0001.json
lib/epsonscan2/Resources/Tables/ClipConst/ESClipConst0002.json
@ -1064,6 +1255,7 @@ lib/epsonscan2/Resources/Tables/ClipRevise/ESClipRevise0002.json
lib/epsonscan2/Resources/Tables/ClipRevise/ESClipRevise0003.json
lib/epsonscan2/Resources/Tables/ClipRevise/ESClipRevise0004.json
lib/epsonscan2/Resources/Tables/ClipRevise/ESClipRevise0005.json
lib/epsonscan2/Resources/Tables/ClipRevise/ESClipRevise0006.json
lib/epsonscan2/Resources/Tables/DustRemoval/ESDustRemoval0000.json
lib/epsonscan2/Resources/Tables/DustRemoval/ESDustRemoval0001.json
lib/epsonscan2/Resources/Tables/DustRemoval/ESDustRemoval0002.json
@ -1080,11 +1272,21 @@ lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0202.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0206.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0207.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0301.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0500.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0501.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0502.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0503.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0600.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0601.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0602.json
lib/epsonscan2/Resources/Tables/FilterSequence/ESFilterSequence0603.json
lib/epsonscan2/Resources/Tables/Focus/ESFocus0000.json
lib/epsonscan2/Resources/Tables/Focus/ESFocus0001.json
lib/epsonscan2/Resources/Tables/JpegQuality/ESJpegQuality0000.json
lib/epsonscan2/Resources/Tables/JpegQuality/ESJpegQuality0001.json
lib/epsonscan2/Resources/Tables/JpegQuality/ESJpegQuality0002.json
lib/epsonscan2/Resources/Tables/JpegQuality/ESJpegQuality0003.json
lib/epsonscan2/Resources/Tables/JpegQuality/ESJpegQuality0004.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0000.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0001.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0002.json
@ -1109,6 +1311,10 @@ lib/epsonscan2/Resources/Tables/LUT/ESLUT0025.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0026.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0027.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0028.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0029.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0030.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0031.json
lib/epsonscan2/Resources/Tables/LUT/ESLUT0032.json
lib/epsonscan2/Resources/Tables/MaxResolution/ESMaxResolution0000.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire0000.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire0001.json
@ -1189,6 +1395,7 @@ lib/epsonscan2/Resources/Tables/Moire/ESMoire2003.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2004.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2005.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2006.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2007.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2008.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2009.json
lib/epsonscan2/Resources/Tables/Moire/ESMoire2010.json
@ -1305,6 +1512,12 @@ lib/epsonscan2/Resources/Tables/Profile/ESProfile0098.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0099.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0100.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0101.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0102.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0103.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0104.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0105.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0106.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile0107.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1000.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1001.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1002.json
@ -1378,6 +1591,9 @@ lib/epsonscan2/Resources/Tables/Profile/ESProfile1069.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1070.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1071.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1072.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1073.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1074.json
lib/epsonscan2/Resources/Tables/Profile/ESProfile1075.json
lib/epsonscan2/Resources/Tables/Reduction/ESReduction0000.json
lib/epsonscan2/Resources/Tables/Reduction/ESReduction0001.json
lib/epsonscan2/Resources/Tables/Reduction/ESReduction0002.json
@ -1560,6 +1776,9 @@ lib/epsonscan2/Resources/Tables/Resolution/ESResolution0175.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0176.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0177.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0178.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0179.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0180.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution0181.json
lib/epsonscan2/Resources/Tables/Resolution/ESResolution9999.json
lib/epsonscan2/Resources/Tables/Sharpness/ESSharpness0000.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0000.json
@ -1593,6 +1812,9 @@ lib/epsonscan2/Resources/Tables/USM/ESUSM0027.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0028.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0029.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0030.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0031.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0032.json
lib/epsonscan2/Resources/Tables/USM/ESUSM0033.json
lib/epsonscan2/Resources/Tables/USMBlur/ESUSMBlur0000.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0000.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0001.json
@ -1600,6 +1822,7 @@ lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0002.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0003.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0004.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0005.json
lib/epsonscan2/Resources/Tables/USMNoise/ESUSMNoise0006.json
lib/epsonscan2/Resources/locale/epsonscan2_ar.qm
lib/epsonscan2/Resources/locale/epsonscan2_cs.qm
lib/epsonscan2/Resources/locale/epsonscan2_da.qm