Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
No diagnostics, simply does not display anything.
Big inconvenience for me, as I make massive use of Link Node, and have moved a client site from a development machine with PHP5.2.x to a production server with PHP 5.3.0.
Grateful for feedback/fix.
Comments
Comment #1
webel CreditAttribution: webel commentedPossibly related:
Comment #2
webel CreditAttribution: webel commentedComment #3
TomChiverton CreditAttribution: TomChiverton commentedWorks for me with "php-5.3.2-1.fc12.x86_64" (my live server).
Could you have an invalid node ID or something ?
Comment #4
webel CreditAttribution: webel commented> Works for me with "php-5.3.2-1.fc12.x86_64" (my live server).
Then maybe something else has changed when moving to my production server, if it is not a PHP5.3.0 specific problem [Edit: it almost certainly is, see below]
> Could you have an invalid node ID or something ?
No. I have the exact same site (same database) running on 2 other machines, both with PHP5.2.x, one remote, one local on Mac OS X, and both have Link Node references displayed correctly, for hundreds of nodes.
Comment #5
webel CreditAttribution: webel commentedvs Drupal-6.15
includes/theme.inc: 617
I switched on Devel module and using
dpm($var,name=null)
I stepped throughlink_node_filter_process($text, $show_error_msgs=1)
. The nid is extracted correctly from [node:nid], however (with warning message given above)theme_link_node_thumbnail(&$node)
is never entered at:so
$matches_html[$key]
ends up empty.Then [node:nid] gets replaced with empty at:
It is broken vs PHP5.3.0 [Edit: almost certainly specifically, and also PHP5.3.1, see below]
Comment #6
webel CreditAttribution: webel commented@TomChiverton
It may be due to a bug in PHP5.3.1 (and presumably also PHP5.3.0), whereas you are using "php-5.3.2". Relevant links:
From http://stackoverflow.com/questions/2045875/pass-by-reference-problem-with-php-5-3-1:
Sorry to take your time with this, I don't have the option of upgrading PHP on my production server right now. Could you please investigate the above and consider whether you can implement the interim solution.
This will likely affect a lot of people using Mac OS X Leopard server.
Comment #7
webel CreditAttribution: webel commentedNow I'm really confused (and frustrated). According to http://bugs.php.net/bug.php?id=50394:
Bug #50394 Reference argument converted to value in __call
But I am getting the error with PHP5.3.0, not PHP5.3.1 !
Comment #8
webel CreditAttribution: webel commentedI tried above test on my production server with PHP5.3.0 and got for the mini test:
So I now don't understand how in includes/theme.inc: 617:
This could be failing to correctly pass $args to:
Comment #9
webel CreditAttribution: webel commentedFrom Drupal-6-15 theme.inc (adapted to debug):
Comment #10
TomChiverton CreditAttribution: TomChiverton commentedMy suggestion would be to upgrade PHP on your servers, this looks like a big bug in earlier 5.3 releases.
No one else appears to have run into it, which makes you lucky I guess.
Comment #11
webel CreditAttribution: webel commented@TomChiverton
I wrote:
> I don't have the option of upgrading PHP on my production server right now.
Well for now on the one production server I'm simply hacking out the themed call, so that:
Becomes:
And then
$output = call_user_func_array($info['function'], $args);
is avoided (at least by Link Node) - although I fully expect to hit this problem again in similar form later this saturday afternoon, as I work through a dozen more contributed modules breaking against PHP5.3.0.Thanks for your input.
Comment #12
umina CreditAttribution: umina commentedI'm running PHP version 5.3.2-2 and I get the following errors, about 20 of them:
# warning: Parameter 1 to theme_link_node_thumbnail() expected to be a reference, value given in /var/www/html/drupal/includes/theme.inc on line 656.
# warning: Parameter 1 to theme_link_node_thumbnail() expected to be a reference, value given in /var/www/html/drupal/includes/theme.inc on line 656.
# warning: Parameter 1 to theme_link_node_thumbnail() expected to be a reference, value given in /var/www/html/drupal/includes/theme.inc on line 656.
# warning: Parameter 1 to theme_link_node_thumbnail() expected to be a reference, value given in /var/www/html/drupal/includes/theme.inc on line 656.
# warning: Parameter 1 to theme_link_node_thumbnail() expected to be a reference, value given in /var/www/html/drupal/includes/theme.inc on line 656.
The site works on another older system with no trouble.
/Len
Comment #13
TomChiverton CreditAttribution: TomChiverton commentedWFM, sorry.
Please carry on digging- if you get to the bottom of it I'll certainly look at it.
If they are only warnings, and Link Node otherwise works fine, I suggest you just turn down the logging.
$ rpm -q php
php-5.3.2-2.fc12.x86_64
Comment #14
TomChiverton CreditAttribution: TomChiverton commentedOK, it looks like from #808250 this might be real.
Sorry guys, not sure what is up, but there is a work around at http://drupal.org/node/772894#comment-3015910
Please watch that bug.
Comment #15
TomChiverton CreditAttribution: TomChiverton commented1.3 BETA1 released, contains patch for this issue http://drupal.org/node/182812/release