Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fatal error: Using $this when not in object context #1

Closed
elazar opened this issue Apr 23, 2014 · 1 comment
Closed

Fatal error: Using $this when not in object context #1

elazar opened this issue Apr 23, 2014 · 1 comment

Comments

@elazar
Copy link

elazar commented Apr 23, 2014

Command to replicate:

dns nu.nl google.nl xs4all.nl fok.nl blog.wyrihaximus.net wyrihaximus.net wyrimaps.net blog.wyrimaps.net tweakers.net google.com amazon.co.uk eu.battle.net

Backtrace:

Fatal error: Using $this when not in object context in vendor/wyrihaximus/phergie-dns/src/Plugin.php on line 69

Call Stack:
    0.0001     637672   1. {main}() vendor/phergie/phergie-irc-bot-react/bin/phergie:0
    0.0022    1294200   2. Phergie\Irc\Bot\React\Bot->run() vendor/phergie/phergie-irc-bot-react/bin/phergie:28
    0.0050    2292616   3. Phergie\Irc\Client\React\Client->run() vendor/phergie/phergie-irc-bot-react/src/Bot.php:248
    0.1849    3514352   4. React\EventLoop\StreamSelectLoop->run() vendor/phergie/phergie-irc-client-react/src/Client.php:465
   26.6620    4763016   5. React\EventLoop\StreamSelectLoop->tick() vendor/react/event-loop/React/EventLoop/StreamSelectLoop.php:174
   26.6620    4763016   6. React\EventLoop\StreamSelectLoop->runStreamSelect() vendor/react/event-loop/React/EventLoop/StreamSelectLoop.php:165
   26.6992    4763528   7. call_user_func() vendor/react/event-loop/React/EventLoop/StreamSelectLoop.php:145
   26.6992    4763560   8. React\Socket\Connection->handleData() vendor/react/event-loop/React/EventLoop/StreamSelectLoop.php:145
   26.6992    4768200   9. Evenement\EventEmitter->emit() vendor/react/socket/React/Socket/Connection.php:20
   26.6992    4768552  10. call_user_func_array() vendor/evenement/evenement/src/Evenement/EventEmitter.php:70
   26.6992    4768976  11. React\Dns\Query\{closure}() vendor/evenement/evenement/src/Evenement/EventEmitter.php:70
   26.6996    4778272  12. React\Promise\Deferred->resolve() vendor/react/dns/React/Dns/Query/Executor.php:89
   26.6997    4791592  13. React\Promise\Deferred->processQueue() vendor/react/promise/src/React/Promise/Deferred.php:60
   26.6997    4791944  14. call_user_func() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6997    4791976  15. React\Promise\{closure}() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6997    4791976  16. React\Promise\FulfilledPromise->then() vendor/react/promise/src/React/Promise/Deferred.php:39
   26.6997    4792072  17. call_user_func() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6997    4792104  18. React\Promise\DeferredResolver->resolve() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6997    4792104  19. React\Promise\Deferred->resolve() vendor/react/promise/src/React/Promise/DeferredResolver.php:16
   26.6997    4792488  20. React\Promise\Deferred->processQueue() vendor/react/promise/src/React/Promise/Deferred.php:60
   26.6997    4792840  21. call_user_func() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6997    4792872  22. React\Promise\{closure}() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6999    4805368  23. React\Promise\FulfilledPromise->then() vendor/react/promise/src/React/Promise/Deferred.php:44
   26.6999    4805416  24. call_user_func() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6999    4805448  25. React\Promise\Deferred->resolve() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6999    4805832  26. React\Promise\Deferred->processQueue() vendor/react/promise/src/React/Promise/Deferred.php:60
   26.6999    4806184  27. call_user_func() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6999    4806216  28. React\Promise\{closure}() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6999    4807624  29. React\Promise\FulfilledPromise->then() vendor/react/promise/src/React/Promise/Deferred.php:44
   26.6999    4807672  30. call_user_func() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6999    4807704  31. React\Promise\Deferred->resolve() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6999    4808088  32. React\Promise\Deferred->processQueue() vendor/react/promise/src/React/Promise/Deferred.php:60
   26.6999    4808440  33. call_user_func() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6999    4808472  34. React\Promise\{closure}() vendor/react/promise/src/React/Promise/Deferred.php:102
   26.6999    4808472  35. React\Promise\FulfilledPromise->then() vendor/react/promise/src/React/Promise/Deferred.php:39
   26.6999    4808568  36. call_user_func() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20
   26.6999    4808600  37. WyriHaximus\Phergie\Plugin\Dns\{closure}() vendor/react/promise/src/React/Promise/FulfilledPromise.php:20

Fix diff:

diff --git a/src/Plugin.php b/src/Plugin.php
index 81b5e5c..3b93b56 100644
--- a/src/Plugin.php
+++ b/src/Plugin.php
@@ -64,9 +64,10 @@ class Plugin extends AbstractPlugin
         foreach ($event->getCustomParams() as $hostname) {
             $message = $hostname . ': ';
             $this->logger->debug('Looking up: ' . $hostname);
-            $this->getResolver()->resolve($hostname)->then(function ($ip) use ($event, $queue, $message) {
+            $logger = $this->logger;
+            $this->getResolver()->resolve($hostname)->then(function ($ip) use ($event, $queue, $message, $logger) {
                 $message = $message . $ip;
-                $this->logger->debug($message);
+                $logger->debug($message);
                 foreach ($event->getTargets() as $target) {
                     $queue->ircPrivmsg($target, $message);
                 }
@WyriHaximus
Copy link
Owner

Thanks for reporting, fixed it and looking at the tests it runs smoothly on PHP 5.3 now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants