Portal SAMP
[Ajuda] run timer error 3 "Stack/heap collision (insufficient staack size) - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] run timer error 3 "Stack/heap collision (insufficient staack size) (/showthread.php?tid=4292)



run timer error 3 "Stack/heap collision (insufficient staack size) - RosaScripter - 11/12/2023

Boa rpzd, ando fazendo uma migração de salvamento para mysql porém a cada coisa que mundo anda dando problemas e vou consertando aos poucos porém agora tudo que eu faça não c resolve e vim aqui pedir uma ajuda.

Código:
[13:33:57] [debug] Run time error 3: "Stack/heap collision (insufficient stack size)"
Código:
[13:33:57] [debug]  Stack pointer (STK) is 0x21C400, heap pointer (HEA) is 0x22BDA0
Código:
[13:33:57] [debug] AMX backtrace:


Ao sair do servidor para salvar as contas dar esse problema acima, achei q fosse meu cod mas não encontrei nada fora do comum.

Código:
Callback:: SalvarContaSQL(playerid)
{
    if(pLogado[playerid] == false)
         return true;
    new Float:A, Float:X, Float:Y, Float:Z;
    GetPlayerCameraPos(playerid, X, Y, Z);
    GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
    GetPlayerFacingAngle(playerid, A);
    new Query[255];

    mysql_format(ConexaoSQL, Query, sizeof(Query), "UPDATE `contas` SET \
    `pAdmin`='%d', \
    `pLevel`='%d', \
    `pSkin`='%d', \
    `pDinheiro`='%i', \
    `pSegundosJogados`='%i', \
    `pAvisos`='%d', \
    `pCadeia`='%i', \
    `pInterior`='%d', \
    `pPosX`='%f', \
    `pPosY`='%f', \
    `pPosZ`='%f', \
    `pPosA`='%f', \
    `pCamX`='%f', \
    `pCamY`='%f', \
    `pCamZ`='%f', \
    `pCongelado`='%i', \
    `pCalado`='%d' WHERE `pID`='%i'", PlayerInfo[playerid][pAdmin],
                                    GetPlayerScore(playerid),
                                    GetPlayerSkin(playerid),
                                    PlayerInfo[playerid][pDinheiro],
                                    PlayerInfo[playerid][pSegundosJogados],
                                    PlayerInfo[playerid][pAvisos],
                                    PlayerInfo[playerid][pCadeia],
                                    GetPlayerInterior(playerid),
                                    Pos[0],
                                    Pos[1],
                                    Pos[2],
                                    A,
                                    X,
                                    Y,
                                    Z,
                                    PlayerInfo[playerid][pCongelado],
                                    PlayerInfo[playerid][pCalado],
                                    PlayerInfo[playerid][pID]);
    mysql_query(ConexaoSQL, Query); // Executa o comando

    printf("[MYSQL] Dados do Jogador %s ID %d salvo com sucesso", Name(playerid), PlayerInfo[playerid][pID]); // Apenas um debug
    return 1;
}



RE: run timer error 3 "Stack/heap collision (insufficient staack size) - pushline - 11/12/2023

Erro de heap aí não tem, tem que ver exatamente aonde é chamado, se acontece ao deslogar, veja se é nas funções que estão dentro da OnPlayerDisconnect (operações ternárias dentro de sendclientmessage podem fazer este erro acontecer).
Podias colocar isto tbm no começo do código:
Código PHP:
#pragma     dynamic                     16384