incompatiblidades entre drupal 6 y php 5.3

Recientemente migre un sitio en D6 a un nuevo server.  Al tratar de crear un anuncio (modulo ad_flash) no aparecia el tipo de Ad de flash. Este módulo funcionaba sin problemas y al principio pensé en la posibilidad de que se me hubiera pasado por alto instalar algun paquete en el nuevo servidor. El siguiente error aparecia en los reportes del sitio:

 

Warning: Parameter 2 to ad_flash_adapi() expected to be a reference, value given in module_invoke_all() (line 483 of /var/www/prod/includes/module.inc).

 

Este error se encontraba documentado en el sitio de drupal: warning: Parameter 2 to ad_flash_adapi() expected to be a reference (php 5.3 compatibility)

y la solución consiste en modificar la linea 211

<?php
function ad_flash_adapi($op, &$node) {
?>
a esto:
<?php
function ad_flash_adapi($op, $node) {
?>

 

Una revision a las versiones de php entre el viejo y el nuevo servidor confirmó la diferencia de versiones entre los dos servidores.

antiguo servidor

$ php -v

PHP 5.2.9

 

nuevo servidor
$ php -v
PHP 5.3.8

 

Mismo error en otro modulo:

Warning: Parameter 2 to faceted_search_ui_faceted_search_query_alter() expected to be a reference, value given in module_invoke_all() (line 483 of /var/www/prod/includes/module.inc).

 

solucion, en el archivo:

sites/all/modules/faceted_search/faceted_search_ui.module

modificar la linea
function faceted_search_ui_faceted_search_query_alter($search, &$query) {

de esta manera
function faceted_search_ui_faceted_search_query_alter($search, $query) {

 

Se elimina el & que ya no hace falta en php 5.3 pues el objeto se pasa directamente por referencia.