Please help.

Fatal error:
"Only variables can be passed by reference in /home/.odelia/lvtester/test.greenkri.com/drupal/modules/diff/diff.module on line 484"

This happens when
i edit a node and then and use the "preview changes" button (any node of any nodetype and any filter).

Circumstances
It works offline in my XAMPP localhost testbed. But it gets the error online on the live-testbed of my friends server. Both sites should be near identical. The only differnce in the drupal installations i can think of is that on localhost the simpleURLs are turned on, while online they are not.
About mySQL or php setups in both installation unfortunatly i have no clue.

Any aid would be great.

Comments

dww’s picture

i bet the difference is the php version. this is a classic problem that php4 allows and php5 throws an error for.
should be an easy fix.

Stephan_M’s picture

Does not work on this server either:

Apache/2.0.54 (Debian GNU/Linux)
PHP/4.3.10-18
MySQL 4.0.24

mod_python/3.1.3 Python/2.3.5 mod_ssl/2.0.54 OpenSSL/0.9.7e mod_perl/1.999.21 Perl/v5.8.4

beginner’s picture

Version: 4.7.x-1.1 » 5.x-1.x-dev
Category: support » bug

Same error experienced with latest D5 diff.module checkout on a php 4.4.4 server.

moshe weitzman’s picture

Version: 5.x-1.x-dev » 6.x-2.x-dev

still a problem in D6 version?

greggles’s picture

Status: Active » Fixed

The version for 5.x that was available at that time is http://cvs.drupal.org/viewvc.py/drupal/contributions/modules/diff/diff.m... but I don't see how that could have thrown this error :/

I reviewed the 6.x code as well for a &$ outside of a function definition and didn't find it so I believe that this is fixed.

greggles’s picture

I just realized that this was originally filed against the 4.7 version so the line number is probably referring to this file in which case it was:

$changes .= _diff_table_body(node_load($form_values['nid']), $node);

I believe it's the use of a function as an argument to a function that expects a variable to be passed by reference. Which makes sense: how can you pass the unassigned return value of a function by reference?

Given that this code has been totally removed, I'd say this is no longer a problem.

Anonymous’s picture

Status: Fixed » Closed (fixed)

Automatically closed -- issue fixed for two weeks with no activity.