Просмотр исходного кода

GPU/Loaders: Log an error when a loader tries to load from a component beyond the available ones (12).

Related to #1170
Subv 10 лет назад
Родитель
Сommit
7a37dba75b
1 измененных файлов с 2 добавлено и 0 удалено
  1. 2 0
      src/video_core/command_processor.cpp

+ 2 - 0
src/video_core/command_processor.cpp

@@ -157,6 +157,8 @@ static void WritePicaReg(u32 id, u32 value, u32 mask) {
 
 
                 // TODO: What happens if a loader overwrites a previous one's data?
                 // TODO: What happens if a loader overwrites a previous one's data?
                 for (unsigned component = 0; component < loader_config.component_count; ++component) {
                 for (unsigned component = 0; component < loader_config.component_count; ++component) {
+                    if (component >= 12)
+                        LOG_ERROR(HW_GPU, "Overflow in the vertex attribute loader %u trying to load component %u", loader, component);
                     u32 attribute_index = loader_config.GetComponent(component);
                     u32 attribute_index = loader_config.GetComponent(component);
                     vertex_attribute_sources[attribute_index] = load_address;
                     vertex_attribute_sources[attribute_index] = load_address;
                     vertex_attribute_strides[attribute_index] = static_cast<u32>(loader_config.byte_count);
                     vertex_attribute_strides[attribute_index] = static_cast<u32>(loader_config.byte_count);