diff --git a/src/Magnum/AbstractQuery.h b/src/Magnum/AbstractQuery.h index 7ac76b13a..d5c8e3c47 100644 --- a/src/Magnum/AbstractQuery.h +++ b/src/Magnum/AbstractQuery.h @@ -95,7 +95,7 @@ class MAGNUM_EXPORT AbstractQuery: public AbstractObject { /** @overload */ template AbstractQuery& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** diff --git a/src/Magnum/AbstractShaderProgram.h b/src/Magnum/AbstractShaderProgram.h index 6e22096e3..c69eb3a50 100644 --- a/src/Magnum/AbstractShaderProgram.h +++ b/src/Magnum/AbstractShaderProgram.h @@ -620,7 +620,7 @@ class MAGNUM_EXPORT AbstractShaderProgram: public AbstractObject { /** @overload */ template AbstractShaderProgram& setLabel(const char (&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** @@ -723,7 +723,7 @@ class MAGNUM_EXPORT AbstractShaderProgram: public AbstractObject { /** @overload */ template void bindAttributeLocation(UnsignedInt location, const char(&name)[size]) { - bindAttributeLocationInternal(location, name); + bindAttributeLocationInternal(location, {name, size - 1}); } #ifndef MAGNUM_TARGET_GLES @@ -751,7 +751,7 @@ class MAGNUM_EXPORT AbstractShaderProgram: public AbstractObject { /** @overload */ template void bindFragmentDataLocationIndexed(UnsignedInt location, UnsignedInt index, const char(&name)[size]) { - bindFragmentDataLocationIndexedInternal(location, index, name); + bindFragmentDataLocationIndexedInternal(location, index, {name, size - 1}); } /** @@ -778,7 +778,7 @@ class MAGNUM_EXPORT AbstractShaderProgram: public AbstractObject { /** @overload */ template void bindFragmentDataLocation(UnsignedInt location, const char(&name)[size]) { /* Not using const char* parameter, because this way it avoids most accidents with non-zero-terminated strings */ - bindFragmentDataLocationInternal(location, name); + bindFragmentDataLocationInternal(location, {name, size - 1}); } #endif @@ -841,7 +841,7 @@ class MAGNUM_EXPORT AbstractShaderProgram: public AbstractObject { /** @overload */ template Int uniformLocation(const char(&name)[size]) { - return uniformLocationInternal(name); + return uniformLocationInternal({name, size - 1}); } /** diff --git a/src/Magnum/AbstractTexture.h b/src/Magnum/AbstractTexture.h index 66feebe18..fd70081c2 100644 --- a/src/Magnum/AbstractTexture.h +++ b/src/Magnum/AbstractTexture.h @@ -289,7 +289,7 @@ class MAGNUM_EXPORT AbstractTexture: public AbstractObject { /** @overload */ template AbstractTexture& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** @brief OpenGL texture ID */ diff --git a/src/Magnum/Buffer.h b/src/Magnum/Buffer.h index bcbff3195..4a4d5fc23 100644 --- a/src/Magnum/Buffer.h +++ b/src/Magnum/Buffer.h @@ -835,7 +835,7 @@ class MAGNUM_EXPORT Buffer: public AbstractObject { /** @overload */ template Buffer& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** @brief Target hint */ diff --git a/src/Magnum/Framebuffer.h b/src/Magnum/Framebuffer.h index 2aab943f8..1c3e07c3e 100644 --- a/src/Magnum/Framebuffer.h +++ b/src/Magnum/Framebuffer.h @@ -365,7 +365,7 @@ class MAGNUM_EXPORT Framebuffer: public AbstractFramebuffer, public AbstractObje /** @overload */ template Framebuffer& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** diff --git a/src/Magnum/Mesh.h b/src/Magnum/Mesh.h index 2d77c6d29..48d966ac7 100644 --- a/src/Magnum/Mesh.h +++ b/src/Magnum/Mesh.h @@ -492,7 +492,7 @@ class MAGNUM_EXPORT Mesh: public AbstractObject { /** @overload */ template Mesh& setLabelInternal(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** diff --git a/src/Magnum/Renderbuffer.h b/src/Magnum/Renderbuffer.h index 087ecc9de..74b1f4ecd 100644 --- a/src/Magnum/Renderbuffer.h +++ b/src/Magnum/Renderbuffer.h @@ -147,7 +147,7 @@ class MAGNUM_EXPORT Renderbuffer: public AbstractObject { /** @overload */ template Renderbuffer& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** diff --git a/src/Magnum/Shader.h b/src/Magnum/Shader.h index 53dde89c2..096024175 100644 --- a/src/Magnum/Shader.h +++ b/src/Magnum/Shader.h @@ -518,7 +518,7 @@ class MAGNUM_EXPORT Shader: public AbstractObject { /** @overload */ template Shader& setLabel(const char(&label)[size]) { - return setLabelInternal(label); + return setLabelInternal({label, size - 1}); } /** @brief Shader type */