Skip to content

Commit

Permalink
setlabel macro, strlen null ptr check
Browse files Browse the repository at this point in the history
  • Loading branch information
jakubtomsu committed Apr 12, 2024
1 parent 051d759 commit 4534ddc
Showing 1 changed file with 22 additions and 41 deletions.
63 changes: 22 additions & 41 deletions sokol_gfx.h
Original file line number Diff line number Diff line change
Expand Up @@ -9238,6 +9238,13 @@ _SOKOL_PRIVATE void _sg_gl_update_image(_sg_image_t* img, const sg_image_data* d

static const GUID _sg_d3d11_WKPDID_D3DDebugObjectName = { 0x429b8c22,0x9188,0x4b0c, {0x87,0x42,0xac,0xb0,0xbf,0x85,0xc2,0x00} };

#if defined(SOKOL_DEBUG)
#define _sg_d3d11_setlabel(self, label) _sg_d3d11_SetPrivateData(self, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), label ? (UINT)strlen(label) : 0, label)
#else
#define _sg_d3d11_setlabel(self, label)
#endif


//-- D3D11 C/C++ wrappers ------------------------------------------------------
static inline HRESULT _sg_d3d11_CheckFormatSupport(ID3D11Device* self, DXGI_FORMAT Format, UINT* pFormatSupport) {
#if defined(__cplusplus)
Expand Down Expand Up @@ -10008,7 +10015,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_buffer(_sg_buffer_t* buf, cons
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(buf->d3d11.buf, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
_sg_d3d11_setlabel(buf->d3d11.buf, desc->label);
#endif
}
return SG_RESOURCESTATE_VALID;
Expand Down Expand Up @@ -10116,9 +10123,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_image(_sg_image_t* img, const
_SG_ERROR(D3D11_CREATE_2D_TEXTURE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(img->d3d11.tex2d, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(img->d3d11.tex2d, desc->label);

// create shader-resource-view for 2D texture
// FIXME: currently we don't support setting MSAA texture as shader resource
Expand Down Expand Up @@ -10148,9 +10153,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_image(_sg_image_t* img, const
_SG_ERROR(D3D11_CREATE_2D_SRV_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(img->d3d11.srv, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(img->d3d11.srv, desc->label);
}
}
SOKOL_ASSERT(img->d3d11.tex2d);
Expand Down Expand Up @@ -10192,9 +10195,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_image(_sg_image_t* img, const
_SG_ERROR(D3D11_CREATE_3D_TEXTURE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(img->d3d11.tex3d, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(img->d3d11.tex3d, desc->label);

// create shader-resource-view for 3D texture
if (!msaa) {
Expand All @@ -10208,9 +10209,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_image(_sg_image_t* img, const
_SG_ERROR(D3D11_CREATE_3D_SRV_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(img->d3d11.srv, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(img->d3d11.srv, desc->label);
}
}
SOKOL_ASSERT(img->d3d11.tex3d);
Expand Down Expand Up @@ -10274,9 +10273,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_sampler(_sg_sampler_t* smp, co
_SG_ERROR(D3D11_CREATE_SAMPLER_STATE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(smp->d3d11.smp, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(smp->d3d11.smp, desc->label);
}
return SG_RESOURCESTATE_VALID;
}
Expand Down Expand Up @@ -10371,9 +10368,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_shader(_sg_shader_t* shd, cons
_SG_ERROR(D3D11_CREATE_CONSTANT_BUFFER_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(d3d11_stage->cbufs[ub_index], _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(d3d11_stage->cbufs[ub_index], desc->label);
}
}

Expand Down Expand Up @@ -10412,10 +10407,8 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_shader(_sg_shader_t* shd, cons
SOKOL_ASSERT(shd->d3d11.vs_blob);
memcpy(shd->d3d11.vs_blob, vs_ptr, vs_length);
result = SG_RESOURCESTATE_VALID;
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(shd->d3d11.vs, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
_sg_d3d11_SetPrivateData(shd->d3d11.fs, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(shd->d3d11.vs, desc->label);
_sg_d3d11_setlabel(shd->d3d11.fs, desc->label);
}
}
if (vs_blob) {
Expand Down Expand Up @@ -10507,9 +10500,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_pipeline(_sg_pipeline_t* pip,
_SG_ERROR(D3D11_CREATE_INPUT_LAYOUT_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(pip->d3d11.il, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(pip->d3d11.il, desc->label);

// create rasterizer state
D3D11_RASTERIZER_DESC rs_desc;
Expand All @@ -10529,9 +10520,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_pipeline(_sg_pipeline_t* pip,
_SG_ERROR(D3D11_CREATE_RASTERIZER_STATE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(pip->d3d11.rs, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(pip->d3d11.rs, desc->label);

// create depth-stencil state
D3D11_DEPTH_STENCIL_DESC dss_desc;
Expand All @@ -10557,9 +10546,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_pipeline(_sg_pipeline_t* pip,
_SG_ERROR(D3D11_CREATE_DEPTH_STENCIL_STATE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(pip->d3d11.dss, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(pip->d3d11.dss, desc->label);

// create blend state
D3D11_BLEND_DESC bs_desc;
Expand Down Expand Up @@ -10594,9 +10581,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_pipeline(_sg_pipeline_t* pip,
_SG_ERROR(D3D11_CREATE_BLEND_STATE_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(pip->d3d11.bs, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(pip->d3d11.bs, desc->label);
return SG_RESOURCESTATE_VALID;
}

Expand Down Expand Up @@ -10692,9 +10677,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_attachments(_sg_attachments_t*
_SG_ERROR(D3D11_CREATE_RTV_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(atts->d3d11.colors[i].view.rtv, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(atts->d3d11.colors[i].view.rtv, desc->label);
}
SOKOL_ASSERT(0 == atts->d3d11.depth_stencil.view.dsv);
if (ds_desc->image.id != SG_INVALID_ID) {
Expand Down Expand Up @@ -10729,9 +10712,7 @@ _SOKOL_PRIVATE sg_resource_state _sg_d3d11_create_attachments(_sg_attachments_t*
_SG_ERROR(D3D11_CREATE_DSV_FAILED);
return SG_RESOURCESTATE_FAILED;
}
#if defined(SOKOL_DEBUG)
_sg_d3d11_SetPrivateData(atts->d3d11.depth_stencil.view.dsv, _sg_win32_refguid(_sg_d3d11_WKPDID_D3DDebugObjectName), (UINT)strlen(desc->label), desc->label);
#endif
_sg_d3d11_setlabel(atts->d3d11.depth_stencil.view.dsv, desc->label);
}
return SG_RESOURCESTATE_VALID;
}
Expand Down

0 comments on commit 4534ddc

Please sign in to comment.