Dear friends: I've started with mod_perl just a month ago, and have been building a mod_perl/DBI/Oracle applicacion which went fine, until the following sequence ocurred: 1) I added the exit() routine from the guide, along with it's corresponding BEGIN block 2) I started getting the following error on the logs: [Fri Feb 4 14:57:02 2000] [error] Too many arguments for Apache::ROOTintranet_2eaasa_2ecom_2epe::cgi_2dbtrack::bugtrack_2epl::do_old_ user at /usr/local/apache/share/cgi-btrack/bugtrack.pl line 142, near "$Pwd1)" after every file edit and save cycle. And it always refers to the same subroutine: sub do_login_work { #examine parameters passed and see if user can be passed on, or should be #held back at the login. my $Name = $query->param('Name') || ''; my $Pwd1 = $query->param('Pwd1') || ''; .... if(length($Name) && length($Pwd1)) { do_old_user($Name,$Pwd1); } else { do_more_data(); }; } sub do_old_user() { #verify that user is on file to let him proceed my ($Name,$Pwd1)=@_; my (@usrpwd); The only way to fix it up until now has been to kill and re-start Apache. It has not helped to try the following: -comment out the BEGIN block dealing with exit() redefining, and the new exit() from the Guide -pre-declare : sub do_old_user($$); What am I doing wrong? Regards, Rafael Caceres