修复默认值BUG

This commit is contained in:
gb 2023-12-28 16:38:14 +08:00
parent bc5981dc14
commit 9b1e2408a9
3 changed files with 17 additions and 4 deletions

View File

@ -786,6 +786,7 @@ bool CDlgOptJson::SANEOPT::from_json(known_file_util::IJsonW* jsn)
//else
cv.cond = local_trans::u2a(m.key, CP_UTF8);
cv.val = std::string((char*)&m.bool_val, sizeof(m.bool_val));
def_val.push_back(cv);
m = child->next_member();
}
child->release();
@ -818,6 +819,7 @@ bool CDlgOptJson::SANEOPT::from_json(known_file_util::IJsonW* jsn)
cv.val = std::string((char*)&m.uint64_val, sizeof(m.uint64_val));
else
cv.val = std::string((char*)&m.int_val, sizeof(m.int_val));
def_val.push_back(cv);
m = child->next_member();
}
child->release();
@ -856,6 +858,7 @@ bool CDlgOptJson::SANEOPT::from_json(known_file_util::IJsonW* jsn)
//else
cv.cond = local_trans::u2a(m.key, CP_UTF8);
cv.val = std::string((char*)&m.double_val, sizeof(m.double_val));
def_val.push_back(cv);
m = child->next_member();
}
child->release();
@ -885,6 +888,7 @@ bool CDlgOptJson::SANEOPT::from_json(known_file_util::IJsonW* jsn)
//else
cv.cond = local_trans::u2a(m.key, CP_UTF8);
cv.val = std::string((const char*)m.str_val, lstrlenW(m.str_val) * 2 + 2);
def_val.push_back(cv);
m = child->next_member();
}
child->release();

View File

@ -403,11 +403,20 @@ void CDlgRange::OnBnClickedOk()
val.cond = buf;
if (val.cond.find(L"default:") == 0)
{
std::wstring c(val.cond);
val.cond = L"default";
bool er = true;
//std::wstring c(val.cond);
//val.cond = L"default";
if (val.cond.length() > lstrlenW(L"default:"))
{
val.cond.erase(0, lstrlenW(L"default:"));
er = false;
}
else
val.cond = L"default";
init_.push_back(val);
val.cond = c;
val.cond.erase(0, lstrlenW(L"default:"));
//val.cond = c;
if(er)
val.cond.erase(0, lstrlenW(L"default"));
}
if (range)
{

Binary file not shown.