mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 11:08:02 -06:00
Windows: Solve UI language change not taken into account for new install unless a preference is changed. Code refactoring.
This commit is contained in:
@@ -8713,9 +8713,50 @@ char *ConfigReadString (char *configKey, char *defaultValue, char *str, int maxL
|
|||||||
if (ConfigRead (configKey, str, maxLen))
|
if (ConfigRead (configKey, str, maxLen))
|
||||||
return str;
|
return str;
|
||||||
else
|
else
|
||||||
|
{
|
||||||
|
StringCbCopyA (str, maxLen, defaultValue);
|
||||||
return defaultValue;
|
return defaultValue;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ConfigReadCompareInt(char *configKey, int defaultValue, int* pOutputValue, BOOL bOnlyCheckModified, BOOL* pbModified)
|
||||||
|
{
|
||||||
|
int intValue = ConfigReadInt (configKey, defaultValue);
|
||||||
|
if (pOutputValue)
|
||||||
|
{
|
||||||
|
if (pbModified && (*pOutputValue != intValue))
|
||||||
|
*pbModified = TRUE;
|
||||||
|
if (!bOnlyCheckModified)
|
||||||
|
*pOutputValue = intValue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void ConfigReadCompareString (char *configKey, char *defaultValue, char *str, int maxLen, BOOL bOnlyCheckModified, BOOL *pbModified)
|
||||||
|
{
|
||||||
|
char *strValue = (char*) malloc (maxLen);
|
||||||
|
if (strValue)
|
||||||
|
{
|
||||||
|
memcpy (strValue, str, maxLen);
|
||||||
|
|
||||||
|
ConfigReadString (configKey, defaultValue, strValue, maxLen);
|
||||||
|
|
||||||
|
if (pbModified && strcmp (str, strValue))
|
||||||
|
*pbModified = TRUE;
|
||||||
|
if (!bOnlyCheckModified)
|
||||||
|
memcpy(str, strValue, maxLen);
|
||||||
|
|
||||||
|
free (strValue);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
/* allocation failed. Suppose that value changed */
|
||||||
|
if (pbModified)
|
||||||
|
*pbModified = TRUE;
|
||||||
|
if (!bOnlyCheckModified)
|
||||||
|
ConfigReadString (configKey, defaultValue, str, maxLen);
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void OpenPageHelp (HWND hwndDlg, int nPage)
|
void OpenPageHelp (HWND hwndDlg, int nPage)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -425,6 +425,8 @@ BOOL ConfigWriteString (char *configKey, char *configValue);
|
|||||||
BOOL ConfigWriteInt (char *configKey, int configValue);
|
BOOL ConfigWriteInt (char *configKey, int configValue);
|
||||||
int ConfigReadInt (char *configKey, int defaultValue);
|
int ConfigReadInt (char *configKey, int defaultValue);
|
||||||
char *ConfigReadString (char *configKey, char *defaultValue, char *str, int maxLen);
|
char *ConfigReadString (char *configKey, char *defaultValue, char *str, int maxLen);
|
||||||
|
void ConfigReadCompareInt(char *configKey, int defaultValue, int* pOutputValue, BOOL bOnlyCheckModified, BOOL* pbModified);
|
||||||
|
void ConfigReadCompareString (char *configKey, char *defaultValue, char *str, int maxLen, BOOL bOnlyCheckModified, BOOL *pbModified);
|
||||||
void RestoreDefaultKeyFilesParam (void);
|
void RestoreDefaultKeyFilesParam (void);
|
||||||
BOOL LoadDefaultKeyFilesParam (void);
|
BOOL LoadDefaultKeyFilesParam (void);
|
||||||
void Debug (char *format, ...);
|
void Debug (char *format, ...);
|
||||||
|
|||||||
@@ -714,33 +714,6 @@ static BOOL CreatingHiddenSysVol (void)
|
|||||||
&& bHiddenVol && !bHiddenVolHost);
|
&& bHiddenVol && !bHiddenVolHost);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ConfigReadCompareInt(char *configKey, int defaultValue, int* pOutputValue, BOOL bOnlyCheckModified, BOOL* pbModified)
|
|
||||||
{
|
|
||||||
int intValue = ConfigReadInt (configKey, defaultValue);
|
|
||||||
if (pOutputValue)
|
|
||||||
{
|
|
||||||
if (pbModified && (*pOutputValue != intValue))
|
|
||||||
*pbModified = TRUE;
|
|
||||||
if (!bOnlyCheckModified)
|
|
||||||
*pOutputValue = intValue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ConfigReadCompareString (char *configKey, char *defaultValue, char *str, int maxLen, BOOL bOnlyCheckModified, BOOL *pbModified)
|
|
||||||
{
|
|
||||||
char *strValue = (char*) malloc (maxLen);
|
|
||||||
memcpy (strValue, str, maxLen);
|
|
||||||
|
|
||||||
ConfigReadString (configKey, defaultValue, strValue, maxLen);
|
|
||||||
|
|
||||||
if (pbModified && strcmp (str, strValue))
|
|
||||||
*pbModified = TRUE;
|
|
||||||
if (!bOnlyCheckModified)
|
|
||||||
memcpy(str, strValue, maxLen);
|
|
||||||
|
|
||||||
free (strValue);
|
|
||||||
}
|
|
||||||
|
|
||||||
static void LoadSettingsAndCheckModified (HWND hwndDlg, BOOL bOnlyCheckModified, BOOL* pbSettingsModified, BOOL* pbHistoryModified)
|
static void LoadSettingsAndCheckModified (HWND hwndDlg, BOOL bOnlyCheckModified, BOOL* pbSettingsModified, BOOL* pbHistoryModified)
|
||||||
{
|
{
|
||||||
if (!bOnlyCheckModified)
|
if (!bOnlyCheckModified)
|
||||||
|
|||||||
@@ -639,45 +639,6 @@ static string ResolveAmbiguousSelection (HWND hwndDlg, int *driveNoPtr)
|
|||||||
return retPath;
|
return retPath;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void ConfigReadCompareInt(char *configKey, int defaultValue, int* pOutputValue, BOOL bOnlyCheckModified, BOOL* pbModified)
|
|
||||||
{
|
|
||||||
int intValue = ConfigReadInt (configKey, defaultValue);
|
|
||||||
if (pOutputValue)
|
|
||||||
{
|
|
||||||
if (pbModified && (*pOutputValue != intValue))
|
|
||||||
*pbModified = TRUE;
|
|
||||||
if (!bOnlyCheckModified)
|
|
||||||
*pOutputValue = intValue;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static void ConfigReadCompareString (char *configKey, char *defaultValue, char *str, int maxLen, BOOL bOnlyCheckModified, BOOL *pbModified)
|
|
||||||
{
|
|
||||||
char *strValue = (char*) malloc (maxLen);
|
|
||||||
if (strValue)
|
|
||||||
{
|
|
||||||
memcpy (strValue, str, maxLen);
|
|
||||||
|
|
||||||
ConfigReadString (configKey, defaultValue, strValue, maxLen);
|
|
||||||
|
|
||||||
if (pbModified && strcmp (str, strValue))
|
|
||||||
*pbModified = TRUE;
|
|
||||||
if (!bOnlyCheckModified)
|
|
||||||
memcpy(str, strValue, maxLen);
|
|
||||||
|
|
||||||
free (strValue);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* allocation failed. Suppose that value changed */
|
|
||||||
if (pbModified)
|
|
||||||
*pbModified = TRUE;
|
|
||||||
if (!bOnlyCheckModified)
|
|
||||||
ConfigReadString (configKey, defaultValue, str, maxLen);
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void LoadSettingsAndCheckModified (HWND hwndDlg, BOOL bOnlyCheckModified, BOOL* pbSettingsModified, BOOL* pbHistoryModified)
|
void LoadSettingsAndCheckModified (HWND hwndDlg, BOOL bOnlyCheckModified, BOOL* pbSettingsModified, BOOL* pbHistoryModified)
|
||||||
{
|
{
|
||||||
char langid[6] = {0};
|
char langid[6] = {0};
|
||||||
@@ -767,7 +728,7 @@ void LoadSettingsAndCheckModified (HWND hwndDlg, BOOL bOnlyCheckModified, BOOL*
|
|||||||
if (LOWORD (lLetter) != 0xffff)
|
if (LOWORD (lLetter) != 0xffff)
|
||||||
StringCbPrintfA (szTmp, sizeof(szTmp), "%c:", (char) HIWORD (lLetter));
|
StringCbPrintfA (szTmp, sizeof(szTmp), "%c:", (char) HIWORD (lLetter));
|
||||||
|
|
||||||
ConfigReadCompareString ("LastSelectedDrive", "", szDriveLetter, sizeof (szDriveLetter), bOnlyCheckModified, pbSettingsModified);
|
ConfigReadCompareString ("LastSelectedDrive", "", szTmp, sizeof (szTmp), bOnlyCheckModified, pbSettingsModified);
|
||||||
}
|
}
|
||||||
|
|
||||||
ConfigReadCompareString ("SecurityTokenLibrary", "", SecurityTokenLibraryPath, sizeof (SecurityTokenLibraryPath) - 1, bOnlyCheckModified, pbSettingsModified);
|
ConfigReadCompareString ("SecurityTokenLibrary", "", SecurityTokenLibraryPath, sizeof (SecurityTokenLibraryPath) - 1, bOnlyCheckModified, pbSettingsModified);
|
||||||
|
|||||||
Reference in New Issue
Block a user