Project

General

Profile

Actions

Bug #5843

closed

Missing PHP 7 compatibility fixes

Added by krileon about 8 years ago. Updated about 8 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Target version:
Start date:
10 March 2016
Due date:
% Done:

100%

Estimated time:

Description

Currently cbPMSHandler, cbTabHandler, and cbFieldHandler are still using same class functions for constructors. These need to be replaced with __construct or removed entirely if they don't need any functionality in them. CB Auto Welcome appears to still be using cbTabHandler. The other classes will also need to be checked.

Actions #1

Updated by beat about 8 years ago

CBIF's also have issues.

Fixed in commit 93b6fd292421cd140f132abf598a5606172e8fc3

In new MR !1039

Actions #2

Updated by beat about 8 years ago

Could reproduce the bug reported here:
https://www.joomlapolis.com/forum/198-cb/233141-community-builder-2013-a-php-7-a-j-35-rc-2#279208

Argument 1 passed to CBLib\Session\SessionState::__construct() must implement interface CBLib\Session\SessionInterface, null given

The real error message got suppressed in CBSubs error handler, and the consequence was that Session could not be built. That is because PHP7 is more strict about reference parameters of a function being given a non-reference parameter.

And the distinction was not been made in the DI Container builder between a reference default value: basically for Session::_construct(&params = null) the default value null got given instead of a reference to a null value....

Fixed in commit 93aa15057b3a7b66d972917351c9991c1935aaed for MR !1039

Actions #3

Updated by beat about 8 years ago

These things too are generating notices:
call_user_func( array( $this, $methodName ), $name, $value, $param, $control_name );

with the thing called being:

function _form_list( $name, $value, &$node, $control_name, $ignoreClass = false ) {

Generates
Warning: Parameter 3 to CBLib\AhaWow\View\RegistryEditView::_form_list() expected to be a reference, value given in libraries/CBLib/CBLib/AhaWow/View/RegistryEditView.php on line 3360

Fixed in commit 7551d72858bc14105933efc2564f2f0009878069 for MR !1039

Actions #4

Updated by beat about 8 years ago

  • Status changed from Assigned to Resolved
  • % Done changed from 0 to 100

MR !1041 fixes the cbPMSHandler, cbTabHandler, and cbFieldHandler constructors.

And no other PHP 7 issues visible, so marking this as resolved.

Actions #5

Updated by beat about 8 years ago

  • Status changed from Resolved to Closed
Actions

Also available in: Atom PDF