Stack error
#1
Hola amigos vengo con un error que me tira un plugin se me cae el servidor y me tira este erro

Cita:L 07/07/2016 - 21:38:38: [AMXX] Displaying debug trace (plugin "Rangos_v3.amxx", version "unknown")
L 07/07/2016 - 21:38:38: [AMXX] Run time error 3: stack error
L 07/07/2016 - 21:38:38: [AMXX] [0] Rangos_v3.sma:Confundidohow_login_menu (line 650)
L 07/07/2016 - 21:38:38: [AMXX] [1] Rangos_v3.sma::message_ShowMenu (line 611)

Estas son las lineas

Código PHP:
public show_login_menuid )
{
    new 
Tit[69];
    
formatex(Titcharsmax(Tit), "\wDeathrun \rLevels \yby \rNazi^n\wVisitanos:\r www.Drunk-Gaming.com");
    new 
menu menu_create(Tit"login_menu");
    
    
menu_additemmenu"\wCrear \rCuenta""1" );
    
menu_additemmenu"\wIngresar\r Cuenta ""2" );
    
    
menu_setpropmenuMPROP_EXITMEXIT_NEVER );
    
menu_displayidmenu );
}

// Linea 650 
new Tit[69

la otra es

Código PHP:
public message_ShowMenuiMsgidiDestid )
{
    static 
sMenuCodeiMaxLen ];
    
get_msg_arg_string4sMenuCodesizeofsMenuCode ) - );
    
    if( 
equalsMenuCodeFIRST_JOIN_MSG ) || equalsMenuCodeFIRST_JOIN_MSG_SPEC ) || 
    
equalsMenuCodeINGAME_JOIN_MSG ) || equalsMenuCodeINGAME_JOIN_MSG_SPEC ) )
    {
        if( 
is_user_connectedid )  && g_estadoid ] != LOGUEADO )
        {
            
show_login_menuid );
            return 
PLUGIN_HANDLED;
        }
    }
    
    return 
PLUGIN_HANDLED;
}

// linea 611
show_login_menuid ); 

Ayuda por favor Oh god why
* Ing. Informático * Mapper * Venezolano
Responder
#2
Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 
Responder
#3
Código PHP:
1.-
public 
show_login_menuid )
{
    static 
menumenu menu_create("\wDeathrun \rLevels \yby \rNazi^n\wVisitanos:\r www.Drunk-Gaming.com""login_menu");
    
    
menu_additemmenu"\wCrear \rCuenta""" );
    
menu_additemmenu"\wIngresar\r Cuenta """ );
    
    
menu_setpropmenuMPROP_EXITMEXIT_NEVER );
    
menu_displayidmenu );
}

2.Hookea ShowMenu y Vguimenu a la misma funcion ejMyHookMenu

public MyHookMenuiMsgidiDestid )
{
    if( 
g_estadoid ] != LOGUEADO )
        
show_login_menuid );

    return 
1;


Siempre lo uso asi Whatever
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#4
Código PHP:
public login_menuidmenuitem )
    
client_cmdid"messagemode %s"item "LOGUEAR_USUARIO" "CREAR_USUARIO" ); 


Oh god why
* Ing. Informático * Mapper * Venezolano
Responder
#5
Malisimo papa, aunque se use el MEXIT_NEVER se debe hacer una accion en MENU_EXIT
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#6
Código PHP:
public message_ShowMenuiMsgidiDestid )
{
    static 
sMenuCode32 ];
    
get_msg_arg_string4sMenuCodecharsmaxsMenuCode ) );
    
    if( 
containisMenuCode"Team_Select") != -)
    {
        if( 
g_estadoid ] != LOGUEADO )
        {
            
show_login_menuid );
            return 
PLUGIN_HANDLED;
        }
    }
    
    return 
PLUGIN_CONTINUE;


La verdad que sigo sin entender por que te sale stack error, al menos ahi te puli un poco el codigo
Responder
#7
(08/07/2016, 05:22 PM)josue9243 escribió: Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 

la pagina por default es 0 Genius
[Imagen: bvpq9q-6.png]

NO DOY AYUDA VIA MENSAJE PRIVADO

* Si requieres algún servicio de pago puedes contactarme vía MP o en mi facebook
Responder
#8
(08/07/2016, 05:32 PM)kikizon2 escribió:
(08/07/2016, 05:22 PM)josue9243 escribió: Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 

la pagina por default es 0 Genius

Si, yo que recuerde que cuando no ponia esa 3ra opcion me tiraba error pacman

Probalo nazi y despues deci aca q pso prro pacman


---

EDIT: seguro le salta el stack en message_showmenu ya que tiene un error dentro del menu, que es lo que dije yo...
Responder
#9
Vale combinare todas los aportes y les aviso putos GRACIAS A TODOS
* Ing. Informático * Mapper * Venezolano
Responder
#10
(08/07/2016, 05:35 PM)josue9243 escribió:
(08/07/2016, 05:32 PM)kikizon2 escribió:
(08/07/2016, 05:22 PM)josue9243 escribió: Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 

la pagina por default es 0 Genius

Si, yo que recuerde que cuando no ponia esa 3ra opcion me tiraba error pacman

Probalo nazi y despues deci aca q pso prro pacman


---

EDIT: seguro le salta el stack en message_showmenu ya que tiene un error dentro del menu, que es lo que dije yo...

Sabes que es un stack error al menos?
Responder
#11
(08/07/2016, 06:45 PM)meTaLiCroSS escribió:
(08/07/2016, 05:35 PM)josue9243 escribió:
(08/07/2016, 05:32 PM)kikizon2 escribió:
(08/07/2016, 05:22 PM)josue9243 escribió: Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 

la pagina por default es 0 Genius

Si, yo que recuerde que cuando no ponia esa 3ra opcion me tiraba error pacman

Probalo nazi y despues deci aca q pso prro pacman


---

EDIT: seguro le salta el stack en message_showmenu ya que tiene un error dentro del menu, que es lo que dije yo...

Sabes que es un stack error al menos?

No, pero habia un error ahi que me paso y que tenia que corregir para que funcione, el stack puede ser por otra cosa y no solo por lo que paso asi que bueno.
Responder
#12
(08/07/2016, 06:49 PM)josue9243 escribió:
(08/07/2016, 06:45 PM)meTaLiCroSS escribió:
(08/07/2016, 05:35 PM)josue9243 escribió:
(08/07/2016, 05:32 PM)kikizon2 escribió:
(08/07/2016, 05:22 PM)josue9243 escribió: Fijate esto si no lo viste nazi...




EDIT2: es por esto mira papu
Código PHP:
menu_displayidmenu ); 
nunca especificas la pagina
----->
Código PHP:
menu_displayidmenu); 

la pagina por default es 0 Genius

Si, yo que recuerde que cuando no ponia esa 3ra opcion me tiraba error pacman

Probalo nazi y despues deci aca q pso prro pacman


---

EDIT: seguro le salta el stack en message_showmenu ya que tiene un error dentro del menu, que es lo que dije yo...

Sabes que es un stack error al menos?

No, pero habia un error ahi que me paso y que tenia que corregir para que funcione, el stack puede ser por otra cosa y no solo por lo que paso asi que bueno.

No tienes ni puta idea y andas comentando sin saber. Nadie te obliga a hacerlo, pero si no sabes, por la santisima autoridad de este mundo, NO CO MEN TES

El stack error ocurre cuando la memoria stack llega a un tope (memoria stack = memoria de las variables)

Y esto ocurre basicamente en cuando en un tramo de ejecucion se siguen pidiendo alloc de memoria, llegando a un caso en el que un alloc no puede realizarse debido que llego a un tope.

Pero esto es peor que un stack error, aqui no hay insuficiencia de asignacion de memoria.

Aqui se esta generando una recursion, ya que message_showmenu es llamado de vuelta cada vez que menu_display es llamado a mi parecer, lo que lo encuentro totalmente ilogico debido que 1) menu_display no deberia llamar los callbacks de register_message y 2) dentro de message_showmenu hay condiciones que permiten que no se genere una recursion.

En este caso la recursion es

Call message_showmenu
Call show_menu_login
Call message_showmenu
Call show_menu_login
Call message_showmenu
Call show_menu_login
Call message_showmenu
Call show_menu_login
...

Pero estoy seguro que hay otra cosa jugueteando por ahi

@Nazi estas usando 1.8.3 ?
Responder
#13
si la 1.8.3 negro Oh god why ya intente todo lo que dijieron use tu public y algunas cosas del menu de kiki como el static y no se a caido el servidor les aviso cualquier bronca
* Ing. Informático * Mapper * Venezolano
Responder
#14
Alguna forma de optimizar esta public tambien?

Código PHP:
public message_VGUIMenuiMsgidiDestid )
{
    if( 
get_msg_arg_int) != VGUI_JOIN_TEAM_NUM 
        return 
PLUGIN_CONTINUE;
    
    if( 
is_user_connectedid ) && g_estadoid ] != LOGUEADO )
    {
        
show_login_menuid );
        return 
PLUGIN_HANDLED;
    }
    
    return 
PLUGIN_HANDLED;


aun se sigue cayendo el sv con lo que puse metalicros Oh god why Whatdone
* Ing. Informático * Mapper * Venezolano
Responder
#15
En vez de mandar el menu por message_showmenu, etc,.. ¿por qué no lo mandas en un task de 0.2 cuando se ejecuta client_putinserver? Hace las cosas fáciles y ahí vas a saber que el menú se llama 1 sola vez.

Código PHP:
public client_putinserver(id) {
    
set_task(0.2"show_login_menu"id);
}

public 
show_login_menu(const id) {
    if(!
is_user_connected(id)) {
        return;
    }
    
    
/// LALALALLALALALALALALALLALALA 
    /// TU CODE....
    
    
}

public 
message_ShowMenuiMsgidiDestid )
{
    static 
sMenuCode32 ];
    
get_msg_arg_string4sMenuCodecharsmaxsMenuCode ) );
    
    if( 
containisMenuCode"Team_Select") != -)
    {
        if( 
g_estadoid ] != LOGUEADO )
        {
            return 
PLUGIN_HANDLED;
        }
    }
    
    return 
PLUGIN_CONTINUE;
}

public 
message_VGUIMenuiMsgidiDestid )
{
    if( 
get_msg_arg_int) != VGUI_JOIN_TEAM_NUM 
        return 
PLUGIN_CONTINUE;
    
    return 
PLUGIN_HANDLED;

Believe, be yourself and don't hold on to just one dream ❤

https://github.com/FEDERICOMB96
Responder
#16
Fede, y si el cliente tarda mas de 0,2 seg en conectarse?
Responder
#17
(14/07/2016, 04:39 AM)Gonza.-* escribió: Fede, y si el cliente tarda mas de 0,2 seg en conectarse?

client_putinserver() se ejecuta cuando el usuario ya está conectado.
Responder
#18
(12/07/2016, 02:12 PM)Federicomb escribió: En vez de mandar el menu por message_showmenu, etc,.. ¿por qué no lo mandas en un task de 0.2 cuando se ejecuta client_putinserver? Hace las cosas fáciles y ahí vas a saber que el menú se llama 1 sola vez.

Código PHP:
public client_putinserver(id) {
    
set_task(0.2"show_login_menu"id);
}

public 
show_login_menu(const id) {
    if(!
is_user_connected(id)) {
        return;
    }
    
    
/// LALALALLALALALALALALALLALALA 
    /// TU CODE....
    
    
}

public 
message_ShowMenuiMsgidiDestid )
{
    static 
sMenuCode32 ];
    
get_msg_arg_string4sMenuCodecharsmaxsMenuCode ) );
    
    if( 
containisMenuCode"Team_Select") != -)
    {
        if( 
g_estadoid ] != LOGUEADO )
        {
            return 
PLUGIN_HANDLED;
        }
    }
    
    return 
PLUGIN_CONTINUE;
}

public 
message_VGUIMenuiMsgidiDestid )
{
    if( 
get_msg_arg_int) != VGUI_JOIN_TEAM_NUM 
        return 
PLUGIN_CONTINUE;
    
    return 
PLUGIN_HANDLED;


Vale utilizo el tuyo y me va bien por ahora no se a caido en un dia completo vamos a ver cuando este 32/32 Oh god why
* Ing. Informático * Mapper * Venezolano
Responder
#19
Yo lo que hago es evitar el uso de ShowMenu y VGUImenu
Y hago un TASK en putinserver para llamar al chooseteam (O directamente la función donde lo registra).
Free agent - Vendo plugins, mods o apps del foro IPB (Invision community)
Contactarme vía Discord >>> AtselTV#8202
Responder
#20
(04/08/2016, 03:43 PM)Nazi.- escribió: Vale utilizo el tuyo y me va bien por ahora no se a caido en un dia completo vamos a ver cuando este 32/32 Oh god why

Cuando este 32/32 y 64/32 no se va a caer en ningún momento, créeme así es como lo he usado y no he tenido problemas. Proud
Believe, be yourself and don't hold on to just one dream ❤

https://github.com/FEDERICOMB96
Responder
#21
FATAL ERROR (shutting down): Host_Error: PF_MessageEnd_I: Refusing to send user message ShowMenu of 510 bytes to client, user message size limit is 192 bytes

Buenas chicos. Aquí les traigo un plugin que ustedes mismos hicieron. El plugin anteriormente me había dado un error al compilar porque usaba un dhudmessage.inc diferente al de Arkshine y fue modificado para que pudiese compilar con el dhudmessage.inc originalmente creado por Arkshine. Ahora el plugin me tira el servidor cuando la gente entra con la opción de "Old Style Menu" de su counter strike saliendo el error que ahí arriba dice. ¿Podrían arreglarlo por favor? T_T Necesito este increíble plugin.

Les dejo el link original del post que puse con el .sma para no hacer post doble: https://amxmodx-es.com/Thread-Host-Error...-510-bytes
Responder


Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)