X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;ds=sidebyside;f=source%2Fpixelformat.cpp;fp=source%2Fpixelformat.cpp;h=320fef1f84dd16e447b106df64f1069275c55b89;hb=21eaad595acb574d81bad5140d24b570da4f9785;hp=ac2b1ea73dfde7818fab470b45565e1c5f5e32a2;hpb=cdf928f03f4d8383b8fa978abc4c255a850ec061;p=libs%2Fgl.git diff --git a/source/pixelformat.cpp b/source/pixelformat.cpp index ac2b1ea7..320fef1f 100644 --- a/source/pixelformat.cpp +++ b/source/pixelformat.cpp @@ -177,6 +177,17 @@ unsigned get_component_size(PixelFormat pf) { switch(pf) { + case R8: + case RG8: + case RGB8: + case RGBA8: + case SRGB8: + case SRGB8_ALPHA8: + case LUMINANCE8: + case LUMINANCE8_ALPHA8: + case SLUMINANCE8: + case SLUMINANCE8_ALPHA8: + return 1; case R16F: case RG16F: case RGB16F: @@ -192,13 +203,13 @@ unsigned get_component_size(PixelFormat pf) case DEPTH_COMPONENT32: return 4; default: - return 1; + return 0; } } unsigned get_pixel_size(PixelFormat pf) { - return get_component_count(pf)*get_component_size(pf); + return get_component_count(pf)*max(get_component_size(pf), 1U); } void require_pixelformat(PixelFormat pf)