[Bf-blender-cvs] [60f66768cf4] soc-2019-openxr: Fix GCC compile error, warnings and uninitialized use
Julian Eisel
noreply at git.blender.org
Sun Jun 2 22:33:43 CEST 2019
Commit: 60f66768cf46ffa4ef49b0beb5cfbf159a13ec74
Author: Julian Eisel
Date: Sun Jun 2 22:03:43 2019 +0200
Branches: soc-2019-openxr
https://developer.blender.org/rB60f66768cf46ffa4ef49b0beb5cfbf159a13ec74
Fix GCC compile error, warnings and uninitialized use
extension_count could be used uninitialized if no valid OpenXR runtime
was run.
===================================================================
M source/blender/windowmanager/intern/wm_xr.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_xr.c b/source/blender/windowmanager/intern/wm_xr.c
index 78de4023daf..447c3295036 100644
--- a/source/blender/windowmanager/intern/wm_xr.c
+++ b/source/blender/windowmanager/intern/wm_xr.c
@@ -65,7 +65,7 @@ typedef struct wmXRContext {
*/
static void openxr_gather_extensions_ex(wmXRContext *context, const char *layer_name)
{
- uint32_t extension_count;
+ uint32_t extension_count = 0;
context->oxr.extensions = NULL;
@@ -79,7 +79,7 @@ static void openxr_gather_extensions_ex(wmXRContext *context, const char *layer_
context->oxr.extensions = MEM_calloc_arrayN(
extension_count, sizeof(*context->oxr.extensions), "xrExtensionProperties");
- for (int i = 0; i < extension_count; i++) {
+ for (uint i = 0; i < extension_count; i++) {
context->oxr.extensions[i].type = XR_TYPE_EXTENSION_PROPERTIES;
}
@@ -92,7 +92,7 @@ static void openxr_gather_extensions_ex(wmXRContext *context, const char *layer_
xrEnumerateInstanceExtensionProperties(
layer_name, extension_count, &extension_count, context->oxr.extensions);
#ifdef USE_EXT_LAYER_PRINTS
- for (int i = 0; i < extension_count; i++) {
+ for (uint i = 0; i < extension_count; i++) {
printf("Extension: %s\n", context->oxr.extensions[i].extensionName);
}
#endif
@@ -104,7 +104,7 @@ static void openxr_gather_extensions(wmXRContext *context)
static void openxr_gather_api_layers(wmXRContext *context)
{
- uint32_t layer_count;
+ uint32_t layer_count = 0;
/* Get count for array creation/init first. */
xrEnumerateApiLayerProperties(0, &layer_count, NULL);
@@ -116,13 +116,13 @@ static void openxr_gather_api_layers(wmXRContext *context)
context->oxr.layers = MEM_calloc_arrayN(
layer_count, sizeof(*context->oxr.layers), "XrApiLayerProperties");
- for (int i = 0; i < layer_count; i++) {
+ for (uint i = 0; i < layer_count; i++) {
context->oxr.layers[i].type = XR_TYPE_API_LAYER_PROPERTIES;
}
/* Actually get the layers. */
xrEnumerateApiLayerProperties(layer_count, &layer_count, context->oxr.layers);
- for (int i = 0; i < layer_count; i++) {
+ for (uint i = 0; i < layer_count; i++) {
#ifdef USE_EXT_LAYER_PRINTS
printf("Layer: %s\n", context->oxr.layers[i].layerName);
#endif
@@ -131,7 +131,8 @@ static void openxr_gather_api_layers(wmXRContext *context)
}
}
-static bool openxr_instance_setup(wmXRContext *context) ATTR_NONNULL()
+ATTR_NONNULL()
+static bool openxr_instance_setup(wmXRContext *context)
{
XrInstanceCreateInfo create_info = {.type = XR_TYPE_INSTANCE_CREATE_INFO};
@@ -149,7 +150,7 @@ static bool openxr_instance_setup(wmXRContext *context) ATTR_NONNULL()
create_info.applicationInfo.apiVersion = XR_CURRENT_API_VERSION;
// create_info.enabledExtensionCount = 1;
create_info.enabledExtensionCount = 0;
- static const uchar *enabled_extensions[] = {// "XR_KHR_D3D11_enable",
+ static const char *enabled_extensions[] = {// "XR_KHR_D3D11_enable",
// "XR_KHR_opengl_enable"
""};
create_info.enabledExtensionNames = enabled_extensions;
More information about the Bf-blender-cvs
mailing list