Refactor texture usage logic to helper function

Trac #20875
Signed-off-by: Nicolas Capens

git-svn-id: https://angleproject.googlecode.com/svn/trunk@1107 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/libGLESv2/Texture.cpp b/src/libGLESv2/Texture.cpp
index 92a2da5..e1e579c 100644
--- a/src/libGLESv2/Texture.cpp
+++ b/src/libGLESv2/Texture.cpp
@@ -95,6 +95,17 @@
     return false;
 }
 
+static inline DWORD GetTextureUsage(bool rendertarget, D3DFORMAT fmt)
+{
+    DWORD usage = 0;
+
+    if(rendertarget)
+    {
+        usage |= D3DUSAGE_RENDERTARGET;
+    }
+    return usage;
+}
+
 Image::Image()
 {
     mWidth = 0; 
@@ -1677,7 +1688,8 @@
     if (width > 0 && height > 0)
     {
         IDirect3DDevice9 *device = getDevice();
-        HRESULT result = device->CreateTexture(width, height, levels, isRenderTarget() ? D3DUSAGE_RENDERTARGET : 0, format, getPool(), &mTexture, NULL);
+        DWORD usage = GetTextureUsage(isRenderTarget(), format);
+        HRESULT result = device->CreateTexture(width, height, levels, usage, format, getPool(), &mTexture, NULL);
 
         if (FAILED(result))
         {
@@ -2368,7 +2380,8 @@
     if (size > 0)
     {
         IDirect3DDevice9 *device = getDevice();
-        HRESULT result = device->CreateCubeTexture(size, levels, isRenderTarget() ? D3DUSAGE_RENDERTARGET : 0, format, getPool(), &mTexture, NULL);
+        DWORD usage = GetTextureUsage(isRenderTarget(), format);
+        HRESULT result = device->CreateCubeTexture(size, levels, usage, format, getPool(), &mTexture, NULL);
 
         if (FAILED(result))
         {