SDL_Texture, похоже, меняется на NULL во время выполнения, вызывая EXC_BAD_ACCESS

Процессы имеют ограниченное количество пространства стека - намного меньше, чем объем памяти, доступный для malloc().

Используя alloca(), вы значительно увеличите свои шансы получить ошибку переполнения стека (если вам повезет, или необъяснимый сбой, если вы этого не сделали).

-1
задан Sean McElholm 16 January 2019 в 12:52
поделиться

1 ответ

Я выяснил, в чем проблема, после некоторого копания в моем коде, я заметил, что цикл for файла, который я не опубликовал, вызывал проблему.

Код проблемы:

void Renderer::OnUpdate()
{
    ....
    for(int i = 0; i < (int)sizeof(m_Images); i++)
    {
        if(m_Images[i]->IsEnabled() == true)
        {
            m_Images[i]->OnUpdate();
        }
    }
    ....
}

Фиксированный код:

void Renderer::OnUpdate()
{
    ....
    for(int i = 0; i < m_Images.size(); i++)
    {
        if(m_Images[i]->IsEnabled() == true)
        {
            m_Images[i]->OnUpdate();
        }
    }
    ....
}
0
ответ дан Sean McElholm 16 January 2019 в 12:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: