diff --git a/extensions/EGL_ANGLE_iosurface_client_buffer.txt b/extensions/EGL_ANGLE_iosurface_client_buffer.txt
index 85daac2..8206eab 100644
--- a/extensions/EGL_ANGLE_iosurface_client_buffer.txt
+++ b/extensions/EGL_ANGLE_iosurface_client_buffer.txt
@@ -10,6 +10,7 @@
 
     Corentin Wallez
     Geoff Lang
+    James Darpinian
 
 Contacts
 
@@ -20,8 +21,7 @@
     Draft
 
 Version
-
-    Version 2, Aug 1, 2019
+    Version 3, Aug 13, 2019
 
 Number
 
@@ -96,6 +96,7 @@
     GL_UNSIGNED_BYTE           GL_RED
     GL_UNSIGNED_SHORT          GL_R16UI
     GL_UNSIGNED_BYTE           GL_RG
+    GL_UNSIGNED_BYTE           GL_RGB
     GL_UNSIGNED_BYTE           GL_BGRA_EXT
     GL_HALF_FLOAT              GL_RGBA
     ---------------------------------------------------------------------------
@@ -110,9 +111,14 @@
 
 Issues
 
-    There are no issues, please move on.
+    1. Can RGB formats be supported?
+
+    RESOLVED: Support for RGB internal formats is added in version 3. Surfaces
+    with an RGB format will ensure that the alpha channel of the IOSurface is
+    reset to 1.0 when it is used.
 
 Revision History
 
     Version 1, 2017/12/06 - first draft.
-    Version 2, 2019/08/01 - allow MakeCurrent
+    Version 2, 2019/04/01 - Allow MakeCurrent.
+    Version 3, 2019/08/13 - Allow RGB internal formats
diff --git a/src/OpenGL/common/Image.cpp b/src/OpenGL/common/Image.cpp
index 67de762..695a825 100644
--- a/src/OpenGL/common/Image.cpp
+++ b/src/OpenGL/common/Image.cpp
@@ -1233,6 +1233,7 @@
 			{
 			case sw::FORMAT_R8:            return GL_R8;
 			case sw::FORMAT_G8R8:          return GL_RG8;
+			case sw::FORMAT_X8R8G8B8:      return GL_RGB8;
 			case sw::FORMAT_A8R8G8B8:      return GL_BGRA8_EXT;
 			case sw::FORMAT_R16UI:         return GL_R16UI;
 			case sw::FORMAT_A16B16G16R16F: return GL_RGBA16F;
diff --git a/src/OpenGL/libEGL/Display.cpp b/src/OpenGL/libEGL/Display.cpp
index 99503ea..eeb44e5 100644
--- a/src/OpenGL/libEGL/Display.cpp
+++ b/src/OpenGL/libEGL/Display.cpp
@@ -381,6 +381,7 @@
 				case GL_RED:
 				case GL_R16UI:
 				case GL_RG:
+				case GL_RGB:
 				case GL_BGRA_EXT:
 				case GL_RGBA:
 					clientBufferFormat = attribList[1];
@@ -470,6 +471,7 @@
 			{
 			case GL_RED:
 			case GL_RG:
+			case GL_RGB:
 			case GL_BGRA_EXT:
 				break;
 			case GL_R16UI:
diff --git a/src/OpenGL/libEGL/Surface.cpp b/src/OpenGL/libEGL/Surface.cpp
index dd912ed..17fc234 100644
--- a/src/OpenGL/libEGL/Surface.cpp
+++ b/src/OpenGL/libEGL/Surface.cpp
@@ -250,6 +250,8 @@
 			return sw::FORMAT_R8;
 		case GL_RG:
 			return sw::FORMAT_G8R8;
+		case GL_RGB:
+			return sw::FORMAT_X8R8G8B8;
 		case GL_BGRA_EXT:
 			return sw::FORMAT_A8R8G8B8;
 		default:
diff --git a/tests/GLESUnitTests/unittests.cpp b/tests/GLESUnitTests/unittests.cpp
index 97e5520..bfd2112 100644
--- a/tests/GLESUnitTests/unittests.cpp
+++ b/tests/GLESUnitTests/unittests.cpp
@@ -2255,6 +2255,34 @@
 	Uninitialize();
 }
 
+// Test using RGBX8888 IOSurfaces for rendering
+TEST_F(IOSurfaceClientBufferTest, RenderToRGBX8888IOSurface)
+{
+	Initialize(3, false);
+
+	{ // EGLClientBufferWrapper scope
+		EGLClientBufferWrapper clientBufferWrapper;
+		unsigned char data[3] = { 1, 2, 3 };
+		doClearTest(clientBufferWrapper, GL_RGB, GL_UNSIGNED_BYTE, data, 3);
+	} // end of EGLClientBufferWrapper scope
+
+	Uninitialize();
+}
+
+// Test reading from RGBX8888 IOSurfaces
+TEST_F(IOSurfaceClientBufferTest, ReadFromRGBX8888IOSurface)
+{
+	Initialize(3, false);
+
+	{ // EGLClientBufferWrapper scope
+		EGLClientBufferWrapper clientBufferWrapper;
+		unsigned char data[3] = { 1, 2, 3 };
+		doSampleTest(clientBufferWrapper, GL_RGB, GL_UNSIGNED_BYTE, data, 3);
+	} // end of EGLClientBufferWrapper scope
+
+	Uninitialize();
+}
+
 // Test using RG88 IOSurfaces for rendering
 TEST_F(IOSurfaceClientBufferTest, RenderToRG88IOSurface)
 {
