wined3d: Move WINED3DRS_FILLMODE to the state table.
diff --git a/dlls/wined3d/state.c b/dlls/wined3d/state.c
index b674b08..32b8032 100644
--- a/dlls/wined3d/state.c
+++ b/dlls/wined3d/state.c
@@ -58,6 +58,27 @@
     WARN("undefined state %d\n", state);
 }
 
+static void state_fillmode(DWORD state, IWineD3DStateBlockImpl *stateblock) {
+    D3DFILLMODE Value = stateblock->renderState[WINED3DRS_FILLMODE];
+
+    switch(Value) {
+        case D3DFILL_POINT:
+            glPolygonMode(GL_FRONT_AND_BACK, GL_POINT);
+            checkGLcall("glPolygonMode(GL_FRONT_AND_BACK, GL_POINT)");
+            break;
+        case D3DFILL_WIREFRAME:
+            glPolygonMode(GL_FRONT_AND_BACK, GL_LINE);
+            checkGLcall("glPolygonMode(GL_FRONT_AND_BACK, GL_LINE)");
+            break;
+        case D3DFILL_SOLID:
+            glPolygonMode(GL_FRONT_AND_BACK, GL_FILL);
+            checkGLcall("glPolygonMode(GL_FRONT_AND_BACK, GL_FILL)");
+            break;
+        default:
+            FIXME("Unrecognized WINED3DRS_FILLMODE value %d\n", Value);
+    }
+}
+
 const struct StateEntry StateTable[] =
 {
       /* State name                                         representative,                                     apply function */
@@ -69,7 +90,7 @@
     { /* 5,  WINED3DRS_WRAPU                        */      STATE_RENDER(WINED3DRS_WRAPU),                      state_unknown       },
     { /* 6,  WINED3DRS_WRAPV                        */      STATE_RENDER(WINED3DRS_WRAPV),                      state_unknown       },
     { /* 7,  WINED3DRS_ZENABLE                      */      STATE_RENDER(WINED3DRS_ZENABLE),                    state_unknown       },
-    { /* 8,  WINED3DRS_FILLMODE                     */      STATE_RENDER(WINED3DRS_FILLMODE),                   state_unknown       },
+    { /* 8,  WINED3DRS_FILLMODE                     */      STATE_RENDER(WINED3DRS_FILLMODE),                   state_fillmode      },
     { /* 9,  WINED3DRS_SHADEMODE                    */      STATE_RENDER(WINED3DRS_SHADEMODE),                  state_unknown       },
     { /* 10, WINED3DRS_LINEPATTERN                  */      STATE_RENDER(WINED3DRS_LINEPATTERN),                state_unknown       },
     { /* 11, WINED3DRS_MONOENABLE                   */      STATE_RENDER(WINED3DRS_MONOENABLE),                 state_unknown       },