hi all,
I have the same problem. White screen of death (wsod) with phplist 3.3.2 and 3.3.3. I first tried upgrading from 3.3.1 to 3.3.3 and got the wsod. Rolled back and tried 3.3.1 to 3.3.2 first and also got the wsod.
I am using ubuntu 16.04. There is nothing in the log files for this error but other errors, like incorrect db configuration results in errors in the log file which I think means logging is working.
Via use of print statements I have traced the problem to the loading of plugins. In partucular I have traced the failure to this block of code, starting on line 70, in " admin/pluginlib.php"
foreach ($pluginFiles as $file) {
list($className, $ext) = explode(’.’, basename($file));
if (preg_match("/[\w]+/", $className)) {
// && !in_array($className,$GLOBALS[‘plugins_disabled’])) {
if (!class_exists($className)) {
include_once $file;
if (class_exists($className)) {
$pluginInstance = new $className();
$pluginInstance->origin = $file;
// print “Instance $className
”;
//# bit of a duplication of plugins, but $GLOBALS[‘plugins’] should only contain active ones
//# using “allplugins” allow listing them, and switch on/off in the plugins page
$GLOBALS[‘allplugins’][$className] = $pluginInstance;if (!in_array($className, $GLOBALS['plugins_disabled'])) { $plugin_initialised = getConfig(md5('plugin-'.$className.'-initialised')); if (!empty($plugin_initialised)) { $GLOBALS['plugins'][$className] = $pluginInstance; $pluginInstance->enabled = true; } elseif (in_array($className, $auto_enable_plugins)) { $GLOBALS['plugins'][$className] = $pluginInstance; $pluginInstance->initialise(); $pluginInstance->enabled = true; } else { // plugin is not enabled and not disabled, so disable it and don't process this plugin any further $pluginInstance->enabled = false; $disabled_plugins[$className] = 1; saveConfig('plugins_disabled', serialize($disabled_plugins), 0); continue; } // remember the first plugins that provide editor, authentication or email sending if (!$GLOBALS['editorplugin'] && $pluginInstance->editorProvider && method_exists($pluginInstance, 'editor') ) { $GLOBALS['editorplugin'] = $className; } if (!$GLOBALS['authenticationplugin'] && $pluginInstance->authProvider && method_exists($pluginInstance, 'validateLogin') ) { $GLOBALS['authenticationplugin'] = $className; } if (!$GLOBALS['emailsenderplugin'] && $pluginInstance instanceof EmailSender) { $GLOBALS['emailsenderplugin'] = $pluginInstance; } if (!empty($pluginInstance->DBstruct)) { foreach ($pluginInstance->DBstruct as $tablename => $tablecolumns) { $GLOBALS['tables'][$className.'_'.$tablename] = $GLOBALS['table_prefix'].$className.'_'.$tablename; } } } else { $pluginInstance->enabled = false; dbg($className.' disabled'); } } else { Error('initialisation of plugin '.$className.' failed'); } //print "$className = ".$pluginInstance->name."<br/>"; } }
}
I cannot trace which module is causing the problem. I have tried deleting the file “/admin/plugins/SegmentPlugin.php” as suggested by the post entitled “blank screen on fresh install” as a temporary measure but this did not solve the problem.
Any help appreciated.