I'm experimenting with an install of Drupal 4.6.1 on my Windows XP laptop. Apache 1.3.33, PHP 5.03, mysql 4.0.23, Friends Electric theme.

I installed the Diff module. I made sure to allow <del> and <ins> in my filter. I created several revisions of a page, modifying the main body text slightly on each revision. Then I went to the diff tab. I get a list of revisions, but if I click on "previous", "first", or "current" I get the following PHP warnings and no diff display:

warning: array_merge() [function.array-merge]: Argument #1 is not an array in c:\dev\default\htdocs\includes\menu.inc on line 351.

warning: Missing argument 1 for diff_page() in c:\dev\default\htdocs\modules\diff\diff.module on line 61.

warning: Invalid argument supplied for foreach() in c:\dev\default\htdocs\modules\diff\diff.module on line 89.

It's possible I'm doing something wrong, I'm definitely a Drupal newbie at this point.

Comments

m3avrck’s picture

Priority: Normal » Critical

Was just about to post this bug as well!

Not a problem with what you're doing, dbrewer, nor the code itself. Rather, PHP5 changed the functionality of array_merge() slightly: http://us2.php.net/array_merge

Should be easy enough to update the source code to reflect this! I've updated this bug to critical since it won't work on PHP5 and Drupal 4.6.1 is PHP5 compatible ... since this module is for Drupal 4.6.1, it should be PHP5 compatbile as well, or so my reasoning suggests :-)

matt_paz’s picture

I'm seeing this as well ... I'm thinking that this will be a very nice addition to 4.6X

quickcel’s picture

I am getting the same problem using PHP5. Unfortunately, I don't know much PHP. Is there anyone who knows how to update this and could help us out?

Cheers

Péter Cseke’s picture

Happens to mee too.

I'm using Apache 2 / PHP 5 / mySQL 4.x on Windows.

romca’s picture

Status: Active » Fixed

diff_menu did not return array for 'callback argument', that is why your PHP5 trashed error warnings and diff module was not working

around line 44, simply replace

           'callback arguments' => arg(1),

with

           'callback arguments' => array(arg(1)),

this was a tricky error to find :)

Anonymous’s picture

Status: Fixed » Closed (fixed)