diff --git a/app/scanner2/device_user.cpp b/app/scanner2/device_user.cpp index 1e6fffa8..9d4e4f2b 100644 --- a/app/scanner2/device_user.cpp +++ b/app/scanner2/device_user.cpp @@ -262,7 +262,7 @@ HGResult DeviceUser::Open() { HGChar errInfo[256]; HGResult ret = HGSane_OpenSelectedDevice(m_source, m_wnd, &m_saneDev, errInfo, 256); - if (HGBASE_ERR_OK != ret) + if (HGBASE_ERR_OK != ret && strlen(errInfo) != 0) { QMessageBox::information(m_wnd, tr("Prompt"), errInfo); } diff --git a/modules/sane_user/HGSaneImpl.cpp b/modules/sane_user/HGSaneImpl.cpp index 70f5e9bf..6cde6486 100644 --- a/modules/sane_user/HGSaneImpl.cpp +++ b/modules/sane_user/HGSaneImpl.cpp @@ -558,6 +558,7 @@ HGResult HGSaneSourceImpl::OpenSelectedDevice(HGWindow parent, class HGSaneDevic int id = choose_scanner(devs); if (-1 == id) { + memset(errInfo, 0, sizeof(errInfo)); return HGSANE_ERR_FAIL; }