diff options
| author | degasus <wickmarkus@web.de> | 2014-12-09 08:35:04 +0100 |
|---|---|---|
| committer | degasus <wickmarkus@web.de> | 2014-12-09 18:56:27 +0100 |
| commit | 3fc7e55cc4623c1c49efb4c317ab0202499bb5fd (patch) | |
| tree | 209e1cfa9fdd77efb6c4cead86c4b797b6d1edd1 /Source/Core/VideoCommon/OpcodeDecoding.cpp | |
| parent | 02cdb41d3d3eec73d2c843fe865ff906e01b44a4 (diff) | |
VideoCommon: clean up VertexLoader
Diffstat (limited to 'Source/Core/VideoCommon/OpcodeDecoding.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/OpcodeDecoding.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/Source/Core/VideoCommon/OpcodeDecoding.cpp b/Source/Core/VideoCommon/OpcodeDecoding.cpp index 12a9d5b350..34b821605f 100644 --- a/Source/Core/VideoCommon/OpcodeDecoding.cpp +++ b/Source/Core/VideoCommon/OpcodeDecoding.cpp @@ -275,13 +275,17 @@ u8* OpcodeDecoder_Run(DataReader src, u32* cycles, bool in_display_list) } else { - if (!VertexLoaderManager::RunVertices( + int bytes = VertexLoaderManager::RunVertices( cmd_byte & GX_VAT_MASK, // Vertex loader index (0 - 7) (cmd_byte & GX_PRIMITIVE_MASK) >> GX_PRIMITIVE_SHIFT, num_vertices, src, - g_bSkipCurrentFrame)) + g_bSkipCurrentFrame); + + if (bytes < 0) goto end; + else + src.Skip(bytes); } totalCycles += 1600; } |
