diff options
Diffstat (limited to 'samples/DX_APIUsage')
| -rw-r--r-- | samples/DX_APIUsage/DXUT/Optional/SDKmisc.cpp | 2 | ||||
| -rw-r--r-- | samples/DX_APIUsage/DX_APIUsage.vcxproj | 48 | ||||
| -rw-r--r-- | samples/DX_APIUsage/GfeSDKHighlights.c | 21 | ||||
| -rw-r--r-- | samples/DX_APIUsage/GfeSDKHighlights.cpp | 2 | ||||
| -rw-r--r-- | samples/DX_APIUsage/Main.cpp | 14 |
5 files changed, 49 insertions, 38 deletions
diff --git a/samples/DX_APIUsage/DXUT/Optional/SDKmisc.cpp b/samples/DX_APIUsage/DXUT/Optional/SDKmisc.cpp index e81ce83..aec7572 100644 --- a/samples/DX_APIUsage/DXUT/Optional/SDKmisc.cpp +++ b/samples/DX_APIUsage/DXUT/Optional/SDKmisc.cpp @@ -146,7 +146,7 @@ INT_PTR CALLBACK DisplaySwitchToREFWarningProc( HWND hDlg, UINT message, WPARAM SendMessage( GetDlgItem( hDlg, 0x100 ), STM_SETIMAGE, IMAGE_ICON, ( LPARAM )LoadIcon( 0, IDI_QUESTION ) ); WCHAR sz[512]; swprintf_s( sz, 512, - L"This program needs to use the Direct3D %d reference device. This device implements the entire Direct3D %d feature set, but runs very slowly. Do you wish to continue?", lParam, lParam ); + L"This program needs to use the Direct3D %lld reference device. This device implements the entire Direct3D %lld feature set, but runs very slowly. Do you wish to continue?", lParam, lParam ); SetDlgItemText( hDlg, 0x101, sz ); SetDlgItemText( hDlg, IDYES, L"&Yes" ); SetDlgItemText( hDlg, IDNO, L"&No" ); diff --git a/samples/DX_APIUsage/DX_APIUsage.vcxproj b/samples/DX_APIUsage/DX_APIUsage.vcxproj index ee74391..cc01078 100644 --- a/samples/DX_APIUsage/DX_APIUsage.vcxproj +++ b/samples/DX_APIUsage/DX_APIUsage.vcxproj @@ -52,14 +52,22 @@ <ClCompile Include="GfeSDKHighlights.c"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild> - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|Win32'">true</ExcludedFromBuild> - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|x64'">true</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|Win32'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|x64'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_C|Win32'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_C|x64'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild> </ClCompile> <ClCompile Include="GfeSDKHighlights.cpp"> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release_C|x64'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_C|Win32'">true</ExcludedFromBuild> <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug_C|x64'">true</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">false</ExcludedFromBuild> + <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">false</ExcludedFromBuild> </ClCompile> <ClCompile Include="jsoncpp\jsoncpp.cpp" /> <ClCompile Include="Main.cpp" /> @@ -150,7 +158,7 @@ <VCProjectVersion>15.0</VCProjectVersion> <ProjectGuid>{F8E9C3B1-0CBE-495D-8C51-5A936537A15C}</ProjectGuid> <RootNamespace>DXAPIUsage</RootNamespace> - <WindowsTargetPlatformVersion>10.0.16299.0</WindowsTargetPlatformVersion> + <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion> </PropertyGroup> <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" /> <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration"> @@ -265,9 +273,9 @@ <Optimization>Disabled</Optimization> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <AdditionalDependencies>d3dcompiler.lib;d3dx11.lib;d3dx9.lib;DxErr.lib;dxguid.lib;DSound.lib;winmm.lib;comctl32.lib;Imm32.lib;version.lib;legacy_stdio_definitions.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib;Shlwapi.lib;GfeSDK.lib</AdditionalDependencies> @@ -281,9 +289,9 @@ <Optimization>Disabled</Optimization> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;GFESDKDEMO_BUILD_C;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <AdditionalDependencies>d3dcompiler.lib;d3dx11.lib;d3dx9.lib;DxErr.lib;dxguid.lib;DSound.lib;winmm.lib;comctl32.lib;Imm32.lib;version.lib;legacy_stdio_definitions.lib;kernel32.lib;user32.lib;gdi32.lib;winspool.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;comdlg32.lib;advapi32.lib;Shlwapi.lib;GfeSDK.lib</AdditionalDependencies> @@ -297,9 +305,9 @@ <Optimization>Disabled</Optimization> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <AdditionalLibraryDirectories>$(ProjectDir)\..\..\lib\win64;$(DXSDK_DIR)\Lib\x64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> @@ -313,9 +321,9 @@ <Optimization>Disabled</Optimization> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;GFESDKDEMO_BUILD_C;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <AdditionalLibraryDirectories>$(ProjectDir)\..\..\lib\win64;$(DXSDK_DIR)\Lib\x64;%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories> @@ -331,9 +339,9 @@ <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <EnableCOMDATFolding>true</EnableCOMDATFolding> @@ -351,9 +359,9 @@ <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;GFESDKDEMO_BUILD_C;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <EnableCOMDATFolding>true</EnableCOMDATFolding> @@ -371,9 +379,9 @@ <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <EnableCOMDATFolding>true</EnableCOMDATFolding> @@ -391,9 +399,9 @@ <IntrinsicFunctions>true</IntrinsicFunctions> <SDLCheck>true</SDLCheck> <ConformanceMode>true</ConformanceMode> - <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> + <AdditionalIncludeDirectories>$(ProjectDir)DXUT\Core;$(ProjectDir)DXUT\Optional;$(ProjectDir)jsoncpp;$(ProjectDir)..\..\include;$(WindowsSDK_IncludePath);$(DXSDK_DIR)\Include;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> <PreprocessorDefinitions>UNICODE=1;WIN32;_WINDOWS;GFESDKDEMO_BUILD_C;%(PreprocessorDefinitions)</PreprocessorDefinitions> - <DisableSpecificWarnings>4996;%(DisableSpecificWarnings)</DisableSpecificWarnings> + <DisableSpecificWarnings>4996;4838;4302;4091;%(DisableSpecificWarnings)</DisableSpecificWarnings> </ClCompile> <Link> <EnableCOMDATFolding>true</EnableCOMDATFolding> @@ -406,4 +414,4 @@ <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" /> <ImportGroup Label="ExtensionTargets"> </ImportGroup> -</Project>
\ No newline at end of file +</Project> diff --git a/samples/DX_APIUsage/GfeSDKHighlights.c b/samples/DX_APIUsage/GfeSDKHighlights.c index d2ba73c..9ffc36d 100644 --- a/samples/DX_APIUsage/GfeSDKHighlights.c +++ b/samples/DX_APIUsage/GfeSDKHighlights.c @@ -21,12 +21,13 @@ #include <stdarg.h> #include <stdlib.h> #include <string.h> +#include <stdio.h> char g_logBuffer[512]; void dbgprint(const char *fmt, ...) { va_list args; va_start(args, fmt); - vsprintf(g_logBuffer, fmt, args); + vsprintf_s(g_logBuffer, sizeof(g_logBuffer) / sizeof(g_logBuffer[0]), fmt, args); printf(g_logBuffer); printf("\n"); OutputDebugStringA(g_logBuffer); @@ -92,13 +93,13 @@ void Init(char const* gameName, char const* defaultLocale, NVGSDK_Highlight* hig inParams.appName = "gfesdk_dx_sample"; inParams.pollForCallbacks = true; - inParams.scopeTable = &scopes; + inParams.scopeTable = &scopes[0]; inParams.scopeTableSize = COUNT_OF(scopes); inParams.notificationCallback = handleNotification; NVGSDK_CreateResponse outParams; memset(&outParams, 0, sizeof(outParams)); - outParams.scopePermissionTable = &scopePermissions; + outParams.scopePermissionTable = &scopePermissions[0]; outParams.scopePermissionTableSize = COUNT_OF(scopes); NVGSDK_RetCode rc = NVGSDK_Create(&g_sdk, &inParams, &outParams); @@ -146,7 +147,7 @@ void Init(char const* gameName, char const* defaultLocale, NVGSDK_Highlight* hig NVGSDK_RequestPermissionsParams requestPermissionsParams = { 0 }; NVGSDK_Scope requestScopes[COUNT_OF(scopes)]; memset(requestScopes, NVGSDK_SCOPE_MAX, COUNT_OF(scopes)); - requestPermissionsParams.scopeTable = &requestScopes; + requestPermissionsParams.scopeTable = &requestScopes[0]; // 'response' came from create call. It tells us which permissions we requested during Create, // but the user hasn't yet made a decision on @@ -267,7 +268,7 @@ void OnOpenSummary(char const* groupIds[], size_t numGroups, int sigFilter, int //! [OpenSummary C] } -void __stdcall handleGotNumHighlights(NVGSDK_RetCode rc, NVGSDK_Highlights_NumberOfHighlights* response, void* context) +void __stdcall handleGotNumHighlights(NVGSDK_RetCode rc, NVGSDK_Highlights_NumberOfHighlights const* response, void* context) { updateResultString(rc); if (NVGSDK_SUCCEEDED(rc)) @@ -285,7 +286,7 @@ void OnGetNumHighlights(char const* groupId, int sigFilter, int tagFilter) groupView.significanceFilter = sigFilter; groupView.tagsFilter = tagFilter; - NVGSDK_Highlights_GetNumberOfHighlightsAsync(g_sdk, &groupView, &handleGotNumHighlights, NULL); + NVGSDK_Highlights_GetNumberOfHighlightsAsync(g_sdk, &groupView, handleGotNumHighlights, NULL); } void __stdcall handleGotLanguage(NVGSDK_RetCode rc, NVGSDK_Language const* response, void* context) @@ -378,8 +379,8 @@ void __stdcall handleConfigured(NVGSDK_RetCode rc, void* context) { for (size_t name = 0; name < params->highlightDefinitionTable[i].nameTableSize; ++name) { - free(params->highlightDefinitionTable[i].nameTable[name].localeCode); - free(params->highlightDefinitionTable[i].nameTable[name].localizedString); + free((void*)params->highlightDefinitionTable[i].nameTable[name].localeCode); + free((void*)params->highlightDefinitionTable[i].nameTable[name].localizedString); } free(params->highlightDefinitionTable[i].nameTable); } @@ -413,9 +414,9 @@ void ConfigureHighlights(char const* defaultLocale, NVGSDK_Highlight* hl, size_t for (size_t name = 0; name < hl[i].nameTableSize; ++name) { highlights[i].nameTable[name].localeCode = calloc(NVGSDK_MAX_LENGTH, sizeof(char)); - strncpy_s(highlights[i].nameTable[name].localeCode, NVGSDK_MAX_LENGTH, hl[i].nameTable[name].localeCode, NVGSDK_MAX_LENGTH); + strncpy_s((char*)highlights[i].nameTable[name].localeCode, NVGSDK_MAX_LENGTH, hl[i].nameTable[name].localeCode, NVGSDK_MAX_LENGTH); highlights[i].nameTable[name].localizedString = calloc(NVGSDK_MAX_LENGTH, sizeof(char)); - strncpy_s(highlights[i].nameTable[name].localizedString, NVGSDK_MAX_LENGTH, hl[i].nameTable[name].localizedString, NVGSDK_MAX_LENGTH); + strncpy_s((char*)highlights[i].nameTable[name].localizedString, NVGSDK_MAX_LENGTH, hl[i].nameTable[name].localizedString, NVGSDK_MAX_LENGTH); } } diff --git a/samples/DX_APIUsage/GfeSDKHighlights.cpp b/samples/DX_APIUsage/GfeSDKHighlights.cpp index 024c4d6..0839c6a 100644 --- a/samples/DX_APIUsage/GfeSDKHighlights.cpp +++ b/samples/DX_APIUsage/GfeSDKHighlights.cpp @@ -21,7 +21,7 @@ char g_logBuffer[512]; void dbgprint(const char *fmt, ...) { va_list args; va_start(args, fmt); - vsprintf(g_logBuffer, fmt, args); + vsprintf_s(g_logBuffer, sizeof(g_logBuffer) / sizeof(g_logBuffer[0]), fmt, args); printf(g_logBuffer); printf("\n"); OutputDebugStringA(g_logBuffer); diff --git a/samples/DX_APIUsage/Main.cpp b/samples/DX_APIUsage/Main.cpp index eaed21a..386b4db 100644 --- a/samples/DX_APIUsage/Main.cpp +++ b/samples/DX_APIUsage/Main.cpp @@ -33,11 +33,11 @@ using namespace GfeSDK; void TRACE(const char* format, ...) { - char buffer[1000]; + char buffer[512]; va_list argptr; va_start(argptr, format); - vsprintf(buffer, format, argptr); + vsprintf_s(buffer, sizeof(buffer) / sizeof(buffer[0]), format, argptr); va_end(argptr); OutputDebugStringA(buffer); @@ -230,7 +230,6 @@ void InitApp() Json::Value jsonHighlightsConfig; { - Json::Reader reader; std::ifstream inFile(pathStr + "/highlights_config.json"); if (!inFile.good()) { @@ -240,7 +239,10 @@ void InitApp() inFile = std::ifstream(pathStr + "/../../highlights_config.json"); } } - if (!reader.parse(inFile, jsonHighlightsConfig)) + + std::string errs; + Json::CharReaderBuilder builder; + if (!Json::parseFromStream(builder, inFile, &jsonHighlightsConfig, &errs)) { TRACE("FAILED to read json file\n"); } @@ -252,9 +254,9 @@ void InitApp() g_highlightsConfig.highlightsData.resize(jsonHighlightsConfig["highlights"].size()); g_highlightsConfig.highlights.resize(jsonHighlightsConfig["highlights"].size()); - for (int i = 0; i < jsonHighlightsConfig["highlights"].size(); ++i) + for (unsigned int i = 0; i < jsonHighlightsConfig["highlights"].size(); ++i) { - Json::Value const& def = jsonHighlightsConfig["highlights"][i]; + Json::Value const& def = jsonHighlightsConfig["highlights"].get(i, Json::Value()); g_highlightsConfig.highlightsData[i].id = def["id"].asString(); g_highlightsConfig.highlightsData[i].isScreenshot = !def.isMember("startDelta"); g_highlightsConfig.highlightsData[i].startDelta = g_highlightsConfig.highlightsData[i].isScreenshot ? 0 : def["startDelta"].asInt(); |