PHP warning

get_class() expects parameter 1 to be object, null given

/mnt/data/shnoulle/nginx/www/master/application/libraries/PluginManager/PluginManager.php(279)

267      * Returns the instantiated plugin
268      *
269      * @param string $pluginName
270      * @param int $id Identifier used for identifying a specific plugin instance.
271      * If ommitted will return the first instantiated plugin with the given name.
272      * @return iPlugin|null The plugin or null when missing
273      */
274     public function loadPlugin($pluginName, $id = null)
275     {
276         // If the id is not set we search for the plugin.
277         if (!isset($id)) {
278             foreach ($this->plugins as $plugin) {
279                 if (get_class($plugin) == $pluginName) {
280                     return $plugin;
281                 }
282             }
283         } else {
284             if ((!isset($this->plugins[$id]) || get_class($this->plugins[$id]) !== $pluginName)) {
285                 if ($this->getPluginInfo($pluginName) !== false) {
286                     if (class_exists($pluginName)) {
287                         $this->plugins[$id] = new $pluginName($this, $id);
288 
289                         if (method_exists($this->plugins[$id], 'init')) {
290                             $this->plugins[$id]->init();
291                         }

Stack Trace

#0
+
 /mnt/data/shnoulle/nginx/www/master/application/libraries/PluginManager/PluginManager.php(279): get_class(null)
274     public function loadPlugin($pluginName, $id = null)
275     {
276         // If the id is not set we search for the plugin.
277         if (!isset($id)) {
278             foreach ($this->plugins as $plugin) {
279                 if (get_class($plugin) == $pluginName) {
280                     return $plugin;
281                 }
282             }
283         } else {
284             if ((!isset($this->plugins[$id]) || get_class($this->plugins[$id]) !== $pluginName)) {
#1
+
 /mnt/data/shnoulle/nginx/www/master/application/libraries/PluginManager/PluginManager.php(72): LimeSurvey\PluginManager\PluginManager->loadPlugin("tableClassQuestionAttribute")
67 
68         $plugins = array();
69 
70         foreach ($records as $record) {
71             // Only add plugins we can find
72             if ($this->loadPlugin($record->name) !== false) {
73                 $plugins[$record->id] = $record;
74             }
75         }
76         return $plugins;
77     }
#2
+
 /mnt/data/shnoulle/nginx/www/master/application/controllers/admin/PluginManagerController.php(21): LimeSurvey\PluginManager\PluginManager->getInstalledPlugins()
16     {
17         $oPluginManager = App()->getPluginManager();
18 
19         // Scan the plugins folder.
20         $aDiscoveredPlugins = $oPluginManager->scanPlugins();
21         $aInstalledPlugins  = $oPluginManager->getInstalledPlugins();
22         $aInstalledNames    = array_map(
23             function ($installedPlugin) {
24                 return $installedPlugin->name;
25             },
26             $aInstalledPlugins
2018-10-23 14:16:09 nginx/1.12.1 Yii Framework/1.1.19