hi,

I have the following situation ... it is not big issue but i'm interested
why this happen .. so here is it :

my $ID = 555;
print $ID;

sub blah {
    ..........................
 {
    local $$dbh{AutoCommit} = 0;
   eval  {
       local $$dbh{RaiseError} = 1;
       $ID =  selectrow query;#say it returns 111
        ....................
   };
    .....................
 };
 print $ID;

};#end blah

print $ID

So this shortened example prints sometimes :

555
111
111    <----- correct

rarely  :

555
111
555     <--- not correct

OK... this seemed to me like uninitialised variable ... or there is special
behaviour when using lexical-var insde "eval" ....
but the problem dissappeared when I declared it like that :

our $ID;


Could someone explain me why this happen.
=====
iVAN
[EMAIL PROTECTED]
=====


Reply via email to