[wp-trac] [WordPress Trac] #54543: Updating Hello Dolly after upgrading 5.0.14 > 5.9.0 Beta 1 fails

WordPress Trac noreply at wordpress.org
Tue Dec 7 01:29:26 UTC 2021


#54543: Updating Hello Dolly after upgrading 5.0.14 > 5.9.0 Beta 1 fails
--------------------------------------------+---------------------
 Reporter:  costdev                         |       Owner:  (none)
     Type:  defect (bug)                    |      Status:  new
 Priority:  normal                          |   Milestone:  5.9
Component:  Upgrade/Install                 |     Version:  trunk
 Severity:  normal                          |  Resolution:
 Keywords:  needs-testing has-testing-info  |     Focuses:
--------------------------------------------+---------------------

Comment (by costdev):

 == Update

 [https://github.com/WordPress/WordPress/blob/master/wp-admin/includes
 /class-wp-filesystem-direct.php#L545 This] is where it fails.

 The error is:
 {{{#!php
 PHP Warning:  mkdir(): No such file or directory in  <path>wp-
 admin\includes\class-wp-filesystem-direct.php on line 545
 PHP Stack trace:
 PHP   1. {main}()  <path>wp-admin\admin-ajax.php:0
 PHP   2. do_action()  <path>wp-admin\admin-ajax.php:187
 PHP   3. WP_Hook->do_action()  <path>wp-includes\plugin.php:470
 PHP   4. WP_Hook->apply_filters()  <path>wp-includes\class-wp-hook.php:327
 PHP   5. wp_ajax_update_plugin()  <path>wp-includes\class-wp-hook.php:303
 PHP   6. Plugin_Upgrader->bulk_upgrade()  <path>wp-admin\includes\ajax-
 actions.php:4487
 PHP   7. Plugin_Upgrader->run()  <path>wp-admin\includes\class-plugin-
 upgrader.php:354
 PHP   8. Plugin_Upgrader->install_package()  <path>wp-admin\includes
 \class-wp-upgrader.php:837
 PHP   9. WP_Filesystem_Direct->mkdir()  <path>wp-admin\includes\class-wp-
 upgrader.php:629
 PHP  10. mkdir()  <path>wp-admin\includes\class-wp-filesystem-
 direct.php:545
 }}}

 The path being sent is:

 {{{
 <root>/wp-content/plugins/hello-dolly
 }}}

 I've tried:

 - adding a trailing slash (this is specifically removed earlier in the
 above method, so it was a test of curiosity.
 - converting the slashes to `<root>\wp-content\plugins\hello-dolly` in
 line with Windows filesystems.

 The error still occurs.

 I then tried this:

 {{{#!php
 mkdir( $path, FS_CHMOD_DIR, true )
 }}}

 The first two arguments don't make the difference. The third argument
 enables recursive creation of directories. This works, but it also deletes
 everything else that's in the `wp-content/plugins` directory.

 Investigation ongoing.

-- 
Ticket URL: <https://core.trac.wordpress.org/ticket/54543#comment:9>
WordPress Trac <https://core.trac.wordpress.org/>
WordPress publishing platform


More information about the wp-trac mailing list