Penguin Enthusiast
Join Date: Jun 2016
Location: Macedonia
|
07-31-2019
, 12:45
Compiler Internal Error
|
#1
|
I have this ~4K lines plugin, and I was getting internal error when trying to compile, so I tried commenting parts to find out which was causing the error, turns it out it's this:
PHP Code:
public OnGagPlayerReason( id )
{
new szReason[ 32 ];
read_args( szReason, charsmax( szReason ) );
remove_quotes( szReason );
trim( szReason );
new iPlayer = g_iGag[ id ][ GAG_ID ];
new iImmunityLevel = GetImmunityLevel( id );
new iImmunityLevelTarget = GetImmunityLevel( iPlayer );
if( iImmunityLevel < iImmunityLevelTarget )
{
CC_SendMessage( id, "&x04%s &x03%L", g_iConfig[ System_Prefix ], id, "CANT_PERFORM_IMMUNITY" );
arrayset( g_iGag[ id ], 0, sizeof( g_iGag[ ] ) );
return PLUGIN_HANDLED;
}
new szFlags[ 3 ];
copy( szFlags, charsmax( szFlags ), g_iGag[ id ][ GAG_FLAGS ];
new szDate[ 32 ], szNameAdmin[ 32 ], szNameUser[ 32 ], szSteamIdUser[ 32 ], szIpUser[ 24 ], szExpireDate[ 32 ], iSeconds = g_iGag[ iPlayer ][ GAG_SECONDS ];
get_time( "%m/%d/%Y - %H:%M:%S", szDate, charsmax( szDate ) );
get_user_name( id, szNameAdmin, charsmax( szNameAdmin ) );
get_user_name( iPlayer, szNameUser, charsmax( szNameUser ) );
get_user_authid( iPlayer, szSteamIdUser, charsmax( szSteamIdUser ) );
get_user_ip( iPlayer, szIpUser, charsmax( szIpUser ), 1 );
if( iSeconds == 0 )
{
CC_SendMessage( 0, "&x04%s %L", g_iConfig[ System_Prefix ], LANG_PLAYER, "GAGGED_PERMANENT", szNameAdmin, szNameUser, szFlags, szReason );
log_to_file( g_iConfig[ Logs_File ], "(%s) %L", szDate, LANG_PLAYER, "LOG_GAGGED_PERMANENT", szNameAdmin, szNameUser, szSteamIdUser, szIpUser, szReason );
copy( szExpireDate, charsmax( szExpireDate ), "never" );
}
else
{
AddSecondsToDate( szDate, iSeconds, szExpireDate, charsmax( szExpireDate ) );
if( iSeconds == 1 )
{
CC_SendMessage( 0, "&x04%s %L", g_iConfig[ System_Prefix ], LANG_PLAYER, "GAGGED_SINGULAR", szNameAdmin, szNameUser, szReason, szFlags );
log_to_file( g_iConfig[ Logs_File ], "(%s) %L", szDate, LANG_PLAYER, "LOG_GAGGED_SINGULAR", szNameAdmin, szNameUser, szSteamIdUser, szIpUser, szReason, szExpireDate );
}
else
{
CC_SendMessage( 0, "&x04%s %L", g_iConfig[ System_Prefix ], LANG_PLAYER, "GAGGED_PLURAL", szNameAdmin, szNameUser, iSeconds, szReason, szFlags );
log_to_file( g_iConfig[ Logs_File ], "(%s) %L", szDate, LANG_PLAYER, "LOG_GAGGED_PLURAL", szNameAdmin, szNameUser, szSteamIdUser, szIpUser, iSeconds, szReason, szExpireDate );
}
}
trim( szNameUser );
trim( szSteamIdUser );
trim( szIpUser );
trim( szExpireDate );
trim( szReason );
trim( szNameAdmin );
new eData[ PlayerGag ];
copy( eData[ Player_Name ], charsmax( eData[ Player_Name ] ), szNameUser );
copy( eData[ Player_SteamId ], charsmax( eData[ Player_SteamId ] ), szSteamIdUser );
copy( eData[ Player_IP ], charsmax( eData[ Player_IP ] ), szIpUser );
copy( eData[ Player_GagExpire ], charsmax( eData[ Player_GagExpire ] ), szExpireDate );
copy( eData[ Player_GagReason ], charsmax( eData[ Player_GagReason ] ), szReason );
copy( eData[ Player_GagFlags ], charsmax( eData[ Player_GagFlags ] ), szFlags );
ArrayPushArray( g_aBans, eData );
if( szFlags, "v" ) != -1 && is_user_connected( id ) )
{
set_speak( iPlayer, SPEAK_MUTED );
}
GagPlayer( szNameUser, szSteamIdUser, szIpUser, szReason, szFlags, szExpireDate );
set_task( 1.0, "TaskCheckGagExpire", id + TASK_GAG_CHECK, .flags="b" );
arrayset( g_iGag[ id ], 0, sizeof( g_iGag[ ] ) );
set_task( 0.1, "ReOpenGagMenu", id + TASK_GAG_MENU );
return PLUGIN_HANDLED;
}
When I comment new szReason[ 32 ]; it just shows normal errors, since the variable is not created, but when I uncomment it, it shows internal error.
Anyone has any idea what might be the cause of this error? I remember I've seen this error long ago, but I have no idea how I managed to fix it.
__________________
Last edited by edon1337; 07-31-2019 at 14:19.
|
|