WildPHP / irc-bot

A simple and modular PHP IRC bot
MIT License
84 stars 24 forks source link

Default settings may lead to a crash #89

Closed Luke081515 closed 6 years ago

Luke081515 commented 6 years ago

How to reproduce this: At first, download the bot, set some IRC Network up, join a channel. Then you can do this:

[18:48:24] <Satan> !lsgroups
[18:48:25] <Bot> Available groups: o, v
[18:48:30] <Satan> !lsperms o
[18:48:31] * Bot (bot@bothost) quit (Remote host closed the connection)

same for v.

Here's the trace:

[2017-10-21 18:50:05] wildphp.DEBUG: << :Satan!satan@homeofsatan/himself PRIVMSG #bottest :!lsperms o [] []
PHP Warning:  Illegal offset type in /home/luke/PHPBot/src/Permissions/PermissionCommands.php on line 144
PHP Fatal error:  Uncaught Error: Call to a member function getAllowedPermissions() on null in /home/luke/PHPBot/src/Permissions/PermissionCommands.php:146
Stack trace:
#0 [internal function]: WildPHP\Core\Permissions\PermissionCommands->lspermsCommand(Object(WildPHP\Core\Channels\Channel), Object(WildPHP\Core\Users\User), Array, Object(WildPHP\Core\ComponentContainer), 'lsperms')
#1 /home/luke/PHPBot/src/Commands/CommandHandler.php(166): call_user_func(Array, Object(WildPHP\Core\Channels\Channel), Object(WildPHP\Core\Users\User), Array, Object(WildPHP\Core\ComponentContainer), 'lsperms')
#2 /home/luke/PHPBot/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(123): WildPHP\Core\Commands\CommandHandler->parseAndRunCommand(Object(WildPHP\Core\Connection\IRCMessages\PRIVMSG), Object(WildPHP\Core\Connection\Queue))
#3 /home/luke/PHPBot/src/Connection/Parser.php(94): Evenement\EventEmitter->emit('irc.line.in.pri...', Array)
#4 /home/luke/PHPBot/vendor/evenement/evenement/src/Evenement/EventEmitterTrait.php(123): WildPHP in /home/luke/PHPBot/src/Permissions/PermissionCommands.php on line 146