User tests: Successful: Unsuccessful:
Pull Request for Issue #28682 .
See also #28614 (comment).
The getUpdatedFiles
routine in file plugins/installer/override/override.php
reads 2 filelists (before and after event) which should be arrays from session data into 2 variables and does only something if they have the same count of elements and there are differences in the elements. If so, it returns an arry with the different elements, otherwise it returns an empty array.
But there is no check if the file list has been ever stored in the session, i.e. if what is read from the session is an arry or not. This makes it fail with the PHP Warning mentioned in issue #28682 when updating Joomla 3.10 to 4.
The fix is to do nothing and return an empy array if one of the values read back from the session is not an array, like it would be if they had different count.
Code review should be sufficient.
But if you want to do a real test:
Make sure you can see PHP warnings in a log file by setting error reporting and error log in the right way in your PHP settings.
Update a 3.0-dev or current 3.10 nightly build to the latest 4.0-dev nigthly.
Result: See section "Actual result" below.
Repeat "Test 1: Reproduce the issue", but this time use the patched update package built for this PR.
Result: See section "Expected result" below.
No PHP warning as mentioned in issue #28682 .
PHP warning as mentioned in issue #28682 .
None.
Status | New | ⇒ | Pending |
Category | ⇒ | Front End Plugins |
Labels |
Added:
?
|
I have tested this item
Followed test instructions. No issues and php error does not exist.
Status | Pending | ⇒ | Ready to Commit |
RTC
Status | Ready to Commit | ⇒ | Fixed in Code Base |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2020-04-17 00:09:08 |
Closed_By | ⇒ | wilsonge | |
Labels |
Added:
?
|
Thanks!
I have tested this item✅ successfully on 1ac8bde
This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/28683.