Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fatal error: PHP Fatal error: Uncaught TypeError: Return value of WCMYPA_Admin::shipmentIsStatus() must be of the type bool, string returned in wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php:1606 #938

Closed
dennisnienhuis opened this issue Jan 3, 2023 · 1 comment
Labels
bug Something isn't working

Comments

@dennisnienhuis
Copy link

Plugin version

4.16.0

WooCommerce version

7.1.0

WordPress version

6.1.1

PHP version

7.4

What went wrong?

When navigating to an order we get no order informatie, the plugin is giving the following error:

PHP Fatal error:  Uncaught TypeError: Return value of WCMYPA_Admin::shipmentIsStatus() must be of the type bool, string returned in /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php:1606

Stack trace:
#0 /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php(1588): WCMYPA_Admin::shipmentIsStatus(Array, 7)
#1 /wp-content/plugins/woocommerce-myparcel/includes/admin/views/html-order-track-trace-table.php(56): WCMYPA_Admin::renderStatus(Array, 169594)
#2 /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php(944): include('...')
#3 /wp-admin/includes/template.php(1409): WCMYPA_Admin->createMetaBox(Object(WP_Post), Array)
#4 /wp-admin/edit-form-advanced.php(68 in /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php on line 1606

Reproduction steps

  1. Navigate to order with error
  2. Click on -
  3. See error and no order details.

Relevant log output

PHP Fatal error:  Uncaught TypeError: Return value of WCMYPA_Admin::shipmentIsStatus() must be of the type bool, string returned in /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php:1606

Stack trace:
#0 /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php(1588): WCMYPA_Admin::shipmentIsStatus(Array, 7)
#1 /wp-content/plugins/woocommerce-myparcel/includes/admin/views/html-order-track-trace-table.php(56): WCMYPA_Admin::renderStatus(Array, 169594)
#2 /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php(944): include('...')
#3 /wp-admin/includes/template.php(1409): WCMYPA_Admin->createMetaBox(Object(WP_Post), Array)
#4 /wp-admin/edit-form-advanced.php(68 in /wp-content/plugins/woocommerce-myparcel/includes/admin/class-wcmypa-admin.php on line 1606

Additional context

In woocommerce-myparcel/includes/admin/class-wcmypa-admin.php on line 1604 to 1607 there is a function called "shipmentIsStatus", this function is expecting a boolean as return. But this function is returning a string on 1606.

The PHP function "strstr" is being used, which will return the part of the string if found, and "false" if the string is not found.

http://php.net/manual/en/function.strstr.php

The function is used in the same class/file on line 1588 to 1590.
image

@dennisnienhuis dennisnienhuis added the bug Something isn't working label Jan 3, 2023
MyParcelBot pushed a commit that referenced this issue Jan 4, 2023
## [4.16.2](v4.16.1...v4.16.2) (2023-01-04)

### 🐛 Bug Fixes

* fix several type errors ([#939](#939)) ([10ea21e](10ea21e)), closes [#938](#938)
@MyParcelBot
Copy link

🎉 This issue has been resolved in version 4.16.2 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Development

No branches or pull requests

2 participants